yann_lo_san
Messages postés1137Date d'inscriptionlundi 17 novembre 2003StatutMembreDernière intervention23 janvier 2016
-
27 oct. 2006 à 19:24
yann_lo_san
Messages postés1137Date d'inscriptionlundi 17 novembre 2003StatutMembreDernière intervention23 janvier 2016
-
27 oct. 2006 à 21:30
Voilà, impossible de sousClasser un controle static
J'oublie peut etre quelque chose ?
Erreurs : CAST WNDPROC ou Nouvelle WndProc zappée
Si vous avez des infos, je suis preneur !
vecchio56
Messages postés6535Date d'inscriptionlundi 16 décembre 2002StatutMembreDernière intervention22 août 201014 27 oct. 2006 à 19:54
Je n'ai pas compris: erreur de compilation ou pas?
Je pense que ton SetWindowLong et correct (tu ne dois pas caster en DWORD, sinon ca ne marchera pas si jamais tu le portes un jour en 64-bit)
cs_aardman
Messages postés1905Date d'inscriptionmercredi 22 janvier 2003StatutMembreDernière intervention17 septembre 20123 27 oct. 2006 à 21:15
Salut,
Je vois que dans ton sous classement tu tentes d'intercepter
WM_DRAWITEM. A moins que ton static ai une/plusieurs fenêtres filles,
ca n'a pas vraiment d'interet. Si tu met le style SS_OWNERDRAW à un
static, c'est la
fenetre parente du static qui recoit les WM_DRAWITEM, pas le static lui
même.
yann_lo_san
Messages postés1137Date d'inscriptionlundi 17 novembre 2003StatutMembreDernière intervention23 janvier 201626 27 oct. 2006 à 19:45
Et bien quant je caste le WNDPROC en (DWORD) pour lever cette erreur, rien ne s'affiche.
ps : j'ai fait un test de tout le code sans le subClassing (avec WM_DRAWITEM dans la main_WNDPROC) et le static s'affiche bien.
Donc a mon avis, je ne récupère pas la bonne adresse. Mais je sais pas comment.
yann_lo_san
Messages postés1137Date d'inscriptionlundi 17 novembre 2003StatutMembreDernière intervention23 janvier 201626 27 oct. 2006 à 21:30
Et oui aardman, je viens aussi de trouver que ma subClassProc ne recevait que WM_NCPAINTet WM_PAINT, voilà le pourquoi du comment.
Mais oui ça à un interet si tu veux faire une classe complete qui fait
un graphique à barres par exemple.
c'est ce que je fais. le client n'a à s'occuper de rien,
donner son hwnd fenetre et le rect ou dessiner.
La classe s'occupe de créer le static aux coords données et de dessiner ce qu'elle veut.
Mais y'a surement d'autres façons de faire et pour ça, je vous fais confiance.