bonjour,

je me fais mes propres classes fenetre, bouton, etc...

Dans le constructeur de ma classe fenetre, j'ai donc :
hwnd = CreateWindow( ...

Or je dois lui donner une callback via :

WNDCLASS wc;
wc.lpfnWndProc = callbackproc;

Si la callback est située dans mon main et que je passe son adresse par le constructeur de fenetre, ça marche, mais ce n'est pas du tout ce que je veux.

Je veux avoir ma fonction callback dans ma classe fenetre et la passer comme ça :

wc.lpfnWndProc = &fenetre::callbackproc;

Et là ça coince à la compilation...
J'ai cette erreur :

Erreur 1 error C2440: '='*: impossible de convertir de 'LRESULT (__stdcall fenetre::* )(HWND,UINT,WPARAM,LPARAM)' en 'WNDPROC'
J'ai essayé de caster wc.lpfnWndProc = (WNDPROC) &fenetre::callbackproc; mais rien à faire...

J'ai afficher la valeur de l'addresse du main et celle de ma classe, elle sont différentes mais très proches.
J'ai affiché un sizeof des deux et elles font toutes les deux 4 octets. Alors pourquoi le cast est impossible ?

aidez moi svp