DrawItem d'une Dérvée de CStatic

Signaler
Messages postés
260
Date d'inscription
lundi 27 janvier 2003
Statut
Membre
Dernière intervention
27 août 2008
-
Messages postés
260
Date d'inscription
lundi 27 janvier 2003
Statut
Membre
Dernière intervention
27 août 2008
-
Salut a tous,

Toujours sur VC++.net, j'ai une classe dérivée de CStatic et je veut faire mon propre affichage. J'ai donc overridé DrawItem et mis ON_WM_DRAWITEM_REFLECT() dans le message_map mais ca ne rentre toujours pas dedans.

Comment faire, j'ai cherché et j'ai trouvé qqlque truc avec DoDataExchange mais je sais pas si c'est ca.

Hart

2 réponses

Messages postés
949
Date d'inscription
mardi 2 octobre 2001
Statut
Membre
Dernière intervention
8 juillet 2006

Il faut intercepter le message WM_PAINT pour dessiner ce que tu veux en lieu et place du contrôle static.
Je crois que le DrawItem() ne fonctionne que sur les common-controls.

Kaid - kaid.fr.st
Messages postés
260
Date d'inscription
lundi 27 janvier 2003
Statut
Membre
Dernière intervention
27 août 2008
1
En fait, apres des heures de recherche, ca fonctionne impec' grace a DoDataExchange qui intercepte les échange entre le control et les datas et du coup je peut faire mon affichage maison. En fait le truc c'est que je doit reprendre des source des Bc++5 et les mettre sous VC++.net mais ya pas mal de choses qui change. C'est pour ca que si je modifie trop les classes de base je vais devoir tout refaire.
De plus l'interception de Wm_PAint n'aurais surement pas marché car le paint se fait sur la dialog entiere (il me semble).

En tout cas merci pour ton aide, bonne prog,
Hart