begin process at 2012 05 28 18:26:12
  Trouver un code source :
 
dans
 
Accueil > Forum > 

C

 > 

Divers

 > 

Divers

 > 

C/dev Problème rafraichissement de coloration bouton


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

C/dev Problème rafraichissement de coloration bouton

mercredi 2 mai 2007 à 09:01:00 | C/dev Problème rafraichissement de coloration bouton

omnia

Bonjour j'ai actuellement un problème de rafraichissement de la coloration de bouton je m'explique:

j'ai une application avec des onglets et des liste view. je veux que lorsqu'un item est ajouter a la liste view les bouton correspondant changent de couleur jusque la aucun problème voici un extrait du code, plus loin.

Mon problème est pour forcer un rafraichissment!

Al'état actuel le bouton n'est changé de couleur que si une autre fenêtre repasse sur la page ou que je fait disparâitre/réaparaitre le bouton ....

Si quelqu'un a une idée ...


      case WM_DRAWITEM:

           //gestion des bouton seulement
           //Récupération du pointeur vers le hdc
           lpdis = (LPDRAWITEMSTRUCT)lParam;
          
           //récupération du texte du bouton
           tmp[0]=0;
           GetWindowText(lpdis->hwndItem,tmp,TAILLE_TMP);
          
           //taille du texte
           GetTextExtentPoint32(lpdis->hDC,tmp, strlen(tmp), &dims);
          
           //couleur du texte
           SetTextColor(lpdis->hDC, GetSysColor(COLOR_BTNTEXT));

           //on demande combien a d'item le treeview associé au bouton
           // si sup a 0 on met le bouton en couleur sinon en gris
           //couleur du bouton
           if (ListView_GetItemCount(ListViewTbl[Wparam-1022])) // 1022 num de séquence init du 1er bouton (1022 = bt 0)
             SetBkColor(lpdis->hDC, RGB(255,153,0));//orange
           else
             SetBkColor(lpdis->hDC, GetSysColor(COLOR_BTNFACE));//gris

             //Déterminer l'état du bouton:
             etat=lpdis->itemState & ODS_SELECTED;
            
             //Ecrire le texte sur le bouton:
           ExtTextOut(lpdis->hDC,(lpdis->rcItem.right-lpdis->rcItem.left-dims.cx)/2+etat, (lpdis->rcItem.bottom-lpdis->rcItem.top-dims.cy)/2+etat, ETO_OPAQUE | ETO_CLIPPED, &lpdis->rcItem,tmp, strlen(tmp), NULL);

           //Dessiner le cadre du bouton selon son état:
             DrawEdge(lpdis->hDC, &lpdis->rcItem,(etat ? EDGE_SUNKEN : EDGE_RAISED ), BF_RECT|BF_FLAT | BF_SOFT);               
      return TRUE; 


Cette discussion est classée dans : bouton, hdc, tmp, lpdis, rcitem


Répondre à ce message

Sujets en rapport avec ce message

envoyer la notification WM_DRAWITEM (custom draw) [ par youpiyoyo ] j'ai un petit probleme j'ai un boutton custom draw avec 2 images,kan il est clické, il change d'image....dans mon prog je fais un truc de genrecase WM Fenetre au premier plan [ par SnOOpss ] Bonjour suite a mon probleme de capture d'ecran on resolu (cf http://www.cppfrance.com/forum.v2.aspx?ID=631298) j'ai essayé de prendre mon probleme au Changé la couleur d'un bouton [ par KsmoinO ] Boujour,je désire créer, un bouton avec les styles : BS_CHECKBOX et BS_PUSHLIKE et je désire qu'en fonction de l'état de se bouton il s'affiche de cou Un bouton imagé [ par victorcoasne ] Comment faire pour que sur un bouton apparaisse l'image ?J'ai trouvé comment faire apparaître une image : void PrintBmp(HWND hWnd, char *filename, i trouver le HDC [ par gyzmo1 ] Bonjour à tous. Voilà je suis sur un programme en c++ et je me trouve dans une interface dans laquelle je veux faire apparaitre des images réduites. J Bouton enregisté [ par anaxode ] J'ai un petit problème , je voudrais enregisté le contenu de richEdit dans un fichier.J'arrive a le faire depuis une Boite de dialogue , mais j'arri Image sur bouton (API win32) [ par LordBob ] Bonjour a tous,voila j'essaie de mettre une image sur un bouton de mon dialog, je procede donc comme ceci:HANDLE hImage;...hImage = LoadImage(hInst, " sortir d'une boucle while infinie avec un bouton [ par bertrandbasch ] Bonjour,En fait je voudrai pouvoir lancer une boucle while à l'aide d'un bouton 1 qui pourrait être stoppé à l'aide d'un bouton stop.Il me faut cette Question sur le port serie [ par akaras ] Bonjour à tous,J'aimerai me renseigner sur l'utilisation du port serie.J'aimerai brancher un bouton poussoir sur un port serie et que celui ci me reto Ajouter une ressource avec un bouton [ par aujeanfr ] bonjour à tous,je souhaite ajouter une ressource avec un bouton de telle sorte qu'aux exécutions suivantes de mon programme les ressources ajoutées so


Nos sponsors


Sondage...

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

Photothèque

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 2,621 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales