Callback d'une fenetre API Win32 dans une classe instanciable
Bonjour,
J'aimerais savoir s'il est possible de déclarer une classe instanciable qui contiendrait à la fois la méthode de création d'une fenetre win32 avec CreateWindowEx et une méthode pour gérer les événements de cette fenêtre, de sorte que les 2 puissent accéder aux données membre de ma classe.
Typiquement j'ai deux fonctions :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14
|
LRESULT CALLBACK EvenementsFenetre(HWND hwnd, UINT mes, WPARAM wParam, LPARAM lParam)
{
[...]
}
void CreerFenetre()
{
[...]
WNDCLASSEX uneFenetre;
// Adresse WNDPROC de ma fonction CallBack
uneFenetre.lpfnWndProc = EvenementsFenetre;
[...]
} |
Je voudrais savoir comment faire pour les intégrer dans une classe instanciable du style :
Code:
1 2 3 4 5 6 7
|
class MaFenetre
{
int donneeMembre;
void CreerFenetre();
LRESULT CALLBACK EvenementsFenetre(HWND hwnd, UINT mes, WPARAM wParam, LPARAM lParam);
} |
Le problème qui se pose est que, dans le fonction CreerFenetre(), l'instruction uneFenetre.lpfnWndProc attend l'adresse d'une fonction classique et n'apprécie pas du tout la fonction membre que je lui donne.
Je pourrais la déclarer en static mais je cherche à ce que la classe soit instanciable et à pouvoir accéder aux données membres.
Est-ce possible et où est-ce que je m'y prends mal ?