WindowProc dans un Class

WindowProc dans un Class - Programmation

Marsh Posté le 17-02-2001 à 12:03:22    

J'arrive pas à inclure une procédure de fenêtre dans une class C++. A chaque fois, j'ai une erreur de conversion à la con. Help ! Quel est la solution?

Citation :

Aliens Exist !

Reply

Marsh Posté le 17-02-2001 à 12:03:22   

Reply

Marsh Posté le 17-02-2001 à 22:47:31    

Normal car lorsque tu cree une fenetre, tu utilises la fonction
RegisterWindowEx qui prend comme parametre un pointeur sur une structure de type WNDCLASS, et dans cette structure tu passes le pointeur sur la fonction CALLBACK qui va intercepter les messages de la fenetre.
 
Cette fonction est de ce type :
 
LRESULT CALLBACK WindowProc(
  HWND hwnd,      // handle to window
  UINT uMsg,      // message identifier
  WPARAM wParam,  // first message parameter
  LPARAM lParam   // second message parameter
);
 
 
Or si tu as une fonction equivalente dans une classe elle sera de ce type :
 
LRESULT CMyClass::WndProc(HWND , UINT ,WPARAM , LPARAM );
 
Ce qui n'est pas du tout la meme chose.
 
Tu es donc obligé d'utiliser une fonction globale pour gérer les messages windows.

Reply

Marsh Posté le 18-02-2001 à 10:30:09    

on peut au moins faire une fonction CALLBACK dans une class ?

Reply

Marsh Posté le 13-04-2001 à 22:01:39    

mon cul kon peut pas je viens de le faire.
Heureusement que ce forum apporte de l'aide

Reply

Marsh Posté le 13-04-2001 à 22:08:08    

haahhahahaha a écrit a écrit :

mon cul kon peut pas je viens de le faire.
Heureusement que ce forum apporte de l'aide




D'ailleurs on te remercie pour la tienne :D

Reply

Marsh Posté le 14-04-2001 à 00:20:43    

deathsharp a écrit a écrit :

on peut au moins faire une fonction CALLBACK dans une class ?




Vous devriez pouvoir utiliser une méthode statique, non ?
Vous auriez au moins l'avantage de ne pas briser l'encapsulation...

 

[edit]--Message édité par BifaceMcLeOD--[/edit]

Reply

Marsh Posté le 14-04-2001 à 09:43:25    

Verdoux a écrit a écrit :

 
D'ailleurs on te remercie pour la tienne :D




 
Moi je lui ai renvoyé directement de l'aide.
Personne ne lui répondait a part quelqu'un qui disait kon pouvait pas.
C triste ce manque d'aide  :cry:  :cry:  :cry:  :cry:  :cry:  :cry:  :cry:  :cry:

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed