TGRAPHICGAUGE C'EST PLUS BEAU

Signaler
Messages postés
4297
Date d'inscription
samedi 19 janvier 2002
Statut
Modérateur
Dernière intervention
9 janvier 2013
-
Messages postés
702
Date d'inscription
vendredi 21 mars 2003
Statut
Membre
Dernière intervention
1 octobre 2009
-
Cette discussion concerne un article du site. Pour la consulter dans son contexte d'origine, cliquez sur le lien ci-dessous.

https://codes-sources.commentcamarche.net/source/22572-tgraphicgauge-c-est-plus-beau

Messages postés
702
Date d'inscription
vendredi 21 mars 2003
Statut
Membre
Dernière intervention
1 octobre 2009
4
Et re
En fait, ça ne devrait pas marcher, si on en croit l'aide Delphi sur la propriété Bitmap de TBrush. Seul l'image de 8 pixels sur 8 du haut gauche de l'image devrait être prise en compte pour le motif du pinceau , alors qu'en fait ... on peut utiliser n'importe quel format d'image.
Ceci n'est valable qu'avec la fonction FillRect, parce qu'avec la fonction Rectangle (qui dessine le contour en plus) on ne prend effectivement en compte que la région 8 x 8 pixels haut gauche du bitmap du pinceau !!!!
Quelqu'un a une explication ?
Messages postés
702
Date d'inscription
vendredi 21 mars 2003
Statut
Membre
Dernière intervention
1 octobre 2009
4
Oups !
En chassant le bug, j'ai trouvé un truc pas clair : l'utilisation dans le Create du composant de l'appel à la fonction AllocateHWnd
FWindowHandle := AllocateHWnd( WndProc);
De là, deux choses
1 - Ca sert à rien ! (et je ne sais plus pourquoi j'avais mis ça. En fait, ça sert à obtenir un Handle pour un contrôle "non-windowed")
2 - Pas d'appel à DeAllocateHWnd -> Probable source d'une Runtime error 216 à la fermeture de Delphi
En comparant avec de source de TGauge, je me suis aussi aperçu que j'avais rajouté des réponses aux messages WM_LBUTTONDOWN et WM_MOUSEMOVE (pour se servir de la Gauge comme d'un TrackBar) et un évennement OnChange
Je modifie le source et je mets à jour (avec de nouveaux bitmaps)

Kenavo
Messages postés
702
Date d'inscription
vendredi 21 mars 2003
Statut
Membre
Dernière intervention
1 octobre 2009
4
Salut,
Merci à tous !
Inekman, je vois pas pour ton erreur. Peux-tu préciser à quel moment ça t'arrive (localise en mode pas à pas si tu peux), il y a certainement une explication.
Kenavo
Messages postés
69
Date d'inscription
samedi 25 octobre 2003
Statut
Membre
Dernière intervention
29 novembre 2006

Magnifique !
Tout simplement.

Un beau 10/10 !
Afficher les 6 commentaires