cs_Boa51
Messages postés7Date d'inscriptionvendredi 21 mars 2003StatutMembreDernière intervention22 mars 2005
-
6 janv. 2005 à 21:00
cs_boony
Messages postés1Date d'inscriptionmardi 16 mars 2004StatutMembreDernière intervention 8 mars 2008
-
8 mars 2008 à 05:19
Bonjour tout le monde!
Je cherche à coder sous Visual C++ 6.0 des boutons elliptiques, ronds,...
J'arrive a le faire avec des fenêtres, mais pas des boutons...
cs_DARKSIDIOUS
Messages postés15814Date d'inscriptionjeudi 8 août 2002StatutMembreDernière intervention 4 mars 2013130 6 janv. 2005 à 21:21
utilise la fonction SetWindowRgn à ta fenêtre de bouton de la même
façon que tu le ferais pour une fenêtre classique : il faut se rappeler
qu'un bouton n'est rien plus qu'une fenêtre à la base !
DarK Sidious
[Administrateur et responsable VB/API du site ProgOtoP]
julienbj
Messages postés452Date d'inscriptionjeudi 4 décembre 2003StatutMembreDernière intervention19 décembre 200815 13 janv. 2005 à 14:34
Voila, je fais ce bout de code pour creer un bouton elliptique:
hrgn = CreateEllipticRgn(0, 0, 400, 150);
SetWindowRgn(obj_monster_add.handle, hrgn, TRUE);
Le probleme, c'est que mon bouton n'est pas elliptique! Une zone elliptique est bien créée sur le bouton, mais tout le bouton est encore visible, même si seulement une zone de ce bouton est cliquable (celle definie par la region)
Avez vous une idee d'où cela pourrait venir?
Le handle donné a SetWindowRgn est bien celui du bouton! (verifié avec Spy++)
Vive le C
Tchao
[mailto:julienbj@hotmail.com Savon]
cs_DARKSIDIOUS
Messages postés15814Date d'inscriptionjeudi 8 août 2002StatutMembreDernière intervention 4 mars 2013130 13 janv. 2005 à 14:39
Essaye de faire un InvalidateRect pour forcer la fenêtre à se
raffraichir, peut-être qu'il ne s'agit que de l'ancienne frame du
bouton qui est toujours tracé en fond...
DarK Sidious
[Administrateur et responsable VB/API du site ProgOtoP]
Vous n’avez pas trouvé la réponse que vous recherchez ?
Je ne sais pas si ca peut jouer, mais je fais aussi:
case WM_ERASEBKGND:
return (LRESULT)1;
car j'affiche un bitmap en fond, et ainsi j'evite les scintillements lors d'un redraw.
Vive le C
Tchao
[mailto:julienbj@hotmail.com Savon]
julienbj
Messages postés452Date d'inscriptionjeudi 4 décembre 2003StatutMembreDernière intervention19 décembre 200815 13 janv. 2005 à 15:45
Je pense avoir trouver une piste avec la fonction ValidateRgn!
Apres l'avoir utilisée, je vois bien mon bouton avec sa forme elliptique, mais ce uniquement jusqu'à ce que je clique dessus!
Vive le C
Tchao
[mailto:julienbj@hotmail.com Savon]