Probleme lorsque je maximise une fentre sous Visual C++

Probleme lorsque je maximise une fentre sous Visual C++ - C++ - Programmation

Marsh Posté le 08-11-2002 à 17:52:49    

Voila lorsque j'appuis sur le bouton maximiser de ma fenetre, tous les labels se centre a gauche de la fenetre et non au centre de la fenetre. Comment je peuw faire pour qu'ils soient centrés au milieu de la fenetre ??
 
Merci d'avance.
Pompil

Reply

Marsh Posté le 08-11-2002 à 17:52:49   

Reply

Marsh Posté le 08-11-2002 à 17:58:00    

centrer à gauche
centrer au centre
centrer au milieu
...
que voilà de drôles de concepts :D


Message édité par antp le 08-11-2002 à 17:58:43

---------------
mes programmes ·· les voitures dans les films ·· apprenez à écrire
Reply

Marsh Posté le 08-11-2002 à 18:03:39    

désolé je vais etre plus precis en fait lorsque je maximise ma fenetre tous les labels restent a la meme position par rapport au coté gauche de la fenetre alors que moi je veux qu'ils soient un milieu de ma fenetre. Pour resumer lorsque je place mes labels sur la fenetre qui est reduite, je les met au milieu mais ils ne le restent pas qd je maximise la fenetre.
en esperant que cela soit plus precis.
Pompil

Reply

Marsh Posté le 08-11-2002 à 18:06:07    

bah tu dois modifier la position de tes labels lors d'un événement WM_SIZE (je crois) de la fenêtre...  
 
Y a peut-être une autre solution plus simple mais je sais pas si elle est possible en VC++, ça dépend de ce qui existe dans les MFC / API Windows : fais des labels ayant comme largeur toute la largeur de la fenêtre, et donne au texte qui est dans ces labels l'attribut d'alignement "centré"... mais bon là je sais pas t'aider, je sais juste qu'avec Builder je fais Label1->Alignment = taCenter


Message édité par antp le 08-11-2002 à 18:08:06

---------------
mes programmes ·· les voitures dans les films ·· apprenez à écrire
Reply

Marsh Posté le 08-11-2002 à 21:28:38    

S'il calcule la position de ses labels par rapport à la taille effective de la feuille (larg et hauteur) et qu'il les dessine dans les évènements WM_PAINT, ça devrait aller ?
 
Si la taille(fonte) ne change pas, left = (LargeurFeuille - LargeurLabel) / 2, top = (HauteurFeuille - HauteurLabel) / 2.
 
Le WM_SIZE doit être pas mal car sous Win32 bits, le message est presque "continu" (sous win 16 bits, on ne l'a que quand la feuille ne bouge plus).


Message édité par Carbon_14 le 08-11-2002 à 21:29:06
Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed