(win32) Bordure

mogwai93 Messages postés 361 Date d'inscription mardi 31 décembre 2002 Statut Membre Dernière intervention 19 mars 2015 - 26 mai 2007 à 11:35
racpp Messages postés 1910 Date d'inscription vendredi 18 juin 2004 Statut Modérateur Dernière intervention 14 novembre 2014 - 27 mai 2007 à 16:28
Bonjour

J'aimerais changer le motif de bordure utilisé avec le flag WS_BORDER
par exemple :
- changer la couleur
- changer l'épaisseur
- changer le style (pointillé au lieu de trait plein par exemple)

merci !

1 réponse

racpp Messages postés 1910 Date d'inscription vendredi 18 juin 2004 Statut Modérateur Dernière intervention 14 novembre 2014 15
27 mai 2007 à 16:28
Salut,
Je pense que Windows n'offre pas de propriétés additionnelles utilisables avec le style WS_BORDER. Pour contourner le problème il y'a quelques solutions:
1- Sous-classer le controle et dessiner la bordure personnalisée pendant le WM_PAINT dans la procédure de sous-classement.
2- Dans le traitement de WM_PAINT de la procédure de la fenêtre mère, récupérer la position et les dimensions du controle avec GetWindowRect() puis dessiner la bordure personnalisée autour du controle.

Le dessin de la bordure personnalisée se fait, bien entendu, avec les fonctions de la GDI.
0