IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

C++Builder Discussion :

Rendre les icônes du Desktop invisibles


Sujet :

C++Builder

  1. #1
    Membre éclairé
    Profil pro
    Inscrit en
    Août 2002
    Messages
    481
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2002
    Messages : 481
    Par défaut Rendre les icônes du Desktop invisibles
    Bonjour,
    j'utilisais le code suivant
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
     
    void __fastcall TForm1::bInvisibleClick(TObject *Sender)
    {
      HWND hwnd;
      hwnd=FindWindow("Progman", NULL);  // handle du Program Manager
      hwnd=GetWindow(hwnd, GW_CHILD);    // 1er child window : SHELL_DefView
      hwnd=GetWindow(hwnd, GW_CHILD);    // handle du ListView
      bool Visible=IsWindowVisible(hwnd);
      if (Visible) ShowWindow(hwnd, SW_HIDE);
      else
      {
        ShowWindow(hwnd, SW_SHOW);
        TColor couleur=clBlack;   // couleur du texte
        long TextColor=(long)couleur;
        long OldTextColor=::SendMessage(hwnd, LVM_GETTEXTCOLOR, 0, 0);
        if(OldTextColor!=TextColor)      // changement de la couleur du texte
        {
          ::SendMessage(hwnd, LVM_SETTEXTCOLOR, (WPARAM)0, (LPARAM)TextColor);
          InvalidateRect(hwnd, NULL, TRUE);
        }
    	if(::SendMessage(hwnd,LVM_GETTEXTBKCOLOR, 0,0)!= CLR_NONE)
        {
          ::SendMessage(hwnd, LVM_SETTEXTBKCOLOR, (WPARAM)0, (LPARAM)CLR_NONE);
          InvalidateRect(hwnd, NULL, TRUE);
        }
      }
    }
    pour rendre visibles, ou invisibles les icônes du bureau.

    Ce petit programme ne fonctionne plus.
    de la cause et du remède?

    Merci

  2. #2
    Membre Expert
    Avatar de Crayon
    Inscrit en
    Avril 2005
    Messages
    1 811
    Détails du profil
    Informations personnelles :
    Localisation : Autre

    Informations forums :
    Inscription : Avril 2005
    Messages : 1 811
    Par défaut
    Citation Envoyé par Pasqualini Voir le message
    Ce petit programme ne fonctionne plus.
    de la cause et du remède?
    OK, il faut être plus précis. Qu'est-ce qu'y ne fonctionne pas. Le code ne compile plus, le linker fonctionne plus. Est-ce que tu as changé de version de C++Builder. Est-ce que tu as essayer ton programme compilé il y a quelque temps sur un nouveau système d'opération (Win 7)?

    Donne des détails!

  3. #3
    Membre émérite
    Profil pro
    Inscrit en
    Juin 2005
    Messages
    573
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2005
    Messages : 573
    Par défaut
    Salut
    Ton code fonctionne sur xp sp3 et bcb6

  4. #4
    Membre éclairé
    Profil pro
    Inscrit en
    Août 2002
    Messages
    481
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2002
    Messages : 481
    Par défaut
    Citation Envoyé par Crayon Voir le message
    OK, il faut être plus précis. Qu'est-ce qu'y ne fonctionne pas. Le code ne compile plus, le linker fonctionne plus. Est-ce que tu as changé de version de C++Builder. Est-ce que tu as essayer ton programme compilé il y a quelque temps sur un nouveau système d'opération (Win 7)?
    Toute la compilation fonctionne.
    Le programme ne présente pas, a priori, de réticence à se lancer.
    Je l'ai recompiler sous C++Builder 2009, sous Windows 7.

  5. #5
    Membre émérite
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Septembre 2005
    Messages
    401
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 52
    Localisation : France, Seine Maritime (Haute Normandie)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Industrie

    Informations forums :
    Inscription : Septembre 2005
    Messages : 401
    Par défaut
    Hello,

    Est-que tu as vérifié avec Spy++ que sous Windows 7 le bureau était bien représenté par "progman" ??
    Que donnent en debug les valeurs successives de hwnd ??

  6. #6
    Membre expérimenté

    Profil pro
    Inscrit en
    Janvier 2003
    Messages
    288
    Détails du profil
    Informations personnelles :
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations forums :
    Inscription : Janvier 2003
    Messages : 288
    Par défaut
    Curieusement il y a aujourd'hui un article sur le menu démarrer de W7 sur Code Project:
    http://www.codeproject.com/KB/shell/classicshell.aspx

    Il s'agit là par contre de faire apparaitre le menu classique - qui apparemment a été supprimé de W7.
    Je n'ai pas lu l'article mais il est fort possible que tu y trouve des clefs pour solutionner ton problème.

    Yarp

  7. #7
    Membre éclairé
    Profil pro
    Inscrit en
    Août 2002
    Messages
    481
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2002
    Messages : 481
    Par défaut
    Citation Envoyé par totoche76 Voir le message
    Hello,

    Est-que tu as vérifié avec Spy++ que sous Windows 7 le bureau était bien représenté par "progman" ??
    Que donnent en debug les valeurs successives de hwnd ??
    Je n'ai pas réussi à télécharger SPY++.
    Au fait comment s'utilise ce logiciel ?
    Les valeurs successives de hwnd sont NULL.

  8. #8
    Membre Expert
    Avatar de Crayon
    Inscrit en
    Avril 2005
    Messages
    1 811
    Détails du profil
    Informations personnelles :
    Localisation : Autre

    Informations forums :
    Inscription : Avril 2005
    Messages : 1 811
    Par défaut
    Citation Envoyé par Pasqualini Voir le message
    Je n'ai pas réussi à télécharger SPY++.
    Moi j'utilise WinSpy++: http://catch22.net/software/winspy

Discussions similaires

  1. [Swing / JTable] Rendre les cellules d'un JTable non éditables
    Par Jérôme_20 dans le forum Composants
    Réponses: 20
    Dernier message: 10/02/2011, 10h32
  2. Rendre des icônes inactifs en les grisant
    Par stefsas dans le forum ASP.NET
    Réponses: 2
    Dernier message: 15/04/2010, 13h14
  3. [XL-2003] rendre les feuilles classeur invisible
    Par jijie dans le forum Macros et VBA Excel
    Réponses: 5
    Dernier message: 01/05/2009, 23h44
  4. Rendre les codes d'une macro invisible
    Par lemerite dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 11/02/2009, 13h09
  5. Extraire les icônes d'une DLL
    Par Globus dans le forum MFC
    Réponses: 6
    Dernier message: 13/09/2002, 13h44

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo