Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
3047 connectés 

  FORUM HardWare.fr
  Programmation

  [MFC] Fonction CALLBACK membre d'une classe...

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

[MFC] Fonction CALLBACK membre d'une classe...

n°180574
antsite
Je me souviens
Posté le 23-07-2002 à 12:01:44  profilanswer
 

Salut,
J'ai délcaré la fonction CALLBACK servant à EnumWindows dans la classe de ma Dialog:
 
public:
...
 void GetWnds(void);
 BOOL CALLBACK EnumAllWindows(HWND hWnd, LPARAM lParam);
...
 
et définie de la sorte :
 
BOOL CALLBACK CMaDialogDlg::EnumAllWindows(HWND hWnd, LPARAM lParam)
{
 return true;
}
 
void CMaDialogDlg::GetWnds()
{
 EnumWindows((WNDENUMPROC)EnumAllWindows,(LPARAM)Var);
}
 
et voila l'erreur :
 
'type cast' : cannot convert from '' to 'int (__stdcall *)(struct HWND__ *,long)'
 
Quelqu'un peut-il m'aider à éviter cette erreur ? merci
 ANT

mood
Publicité
Posté le 23-07-2002 à 12:01:44  profilanswer
 

n°180579
Harkonnen
Modérateur
Un modo pour les bannir tous
Posté le 23-07-2002 à 12:07:15  profilanswer
 

déclare ta callback comme ceci plutot :
 
BOOL LRESULT CALLBACK EnumAllWindows(HWND hWnd, LPARAM lParam);  
 
à vérifier néanmoins, sinon :
 
BOOL CALLBACK WINAPI EnumAllWindows(HWND hWnd, LPARAM lParam);  
 


Message édité par Harkonnen le 23-07-2002 à 12:07:32

---------------
J'ai un string dans l'array (Paris Hilton)
n°180590
antsite
Je me souviens
Posté le 23-07-2002 à 12:11:11  profilanswer
 

La première solution crée une quarantaine d'erreurs...
La 2ème ne change rien, toujours la même erreur !
 
Il faut ajouter WINAPI ou LRESULT aussi dans la définition ? J'ai fait les 2 mais c pareil de toute façon

n°180601
Harkonnen
Modérateur
Un modo pour les bannir tous
Posté le 23-07-2002 à 12:19:57  profilanswer
 

j'ai déja eu ce genre d'erreur, c clair !!! si j'avais pas ingurgité ces anti inflammatoires, j'arriverais à penser correctement :d (cf blabla@prog)
 
essaie de déclarer ta callback en static pour voir


---------------
J'ai un string dans l'array (Paris Hilton)
n°180604
antp
Super Administrateur
Champion des excuses bidons
Posté le 23-07-2002 à 12:21:33  profilanswer
 

ta "fonction" c'est pas une fonction, c'est une méthode : le premier paramètre (invisible) est le pointeur "this"
 
tu dois la déclarer hors de la classe


---------------
mes programmes ·· les voitures dans les films ·· apprenez à écrire
n°180671
antsite
Je me souviens
Posté le 23-07-2002 à 13:22:51  profilanswer
 

antp a écrit a écrit :

ta "fonction" c'est pas une fonction, c'est une méthode : le premier paramètre (invisible) est le pointeur "this"
 
tu dois la déclarer hors de la classe
 




 
Comment alors accéder aux variables membres de la classe (de ma dialog) ? Comment récupérer le paramètres this invisible ?

n°180691
antsite
Je me souviens
Posté le 23-07-2002 à 13:38:19  profilanswer
 

C'est bon, je me suis débrouillé pour passer en lParam le hwnd du controle qui m'intéressait, donc merci et a+  :hello:

n°180698
antp
Super Administrateur
Champion des excuses bidons
Posté le 23-07-2002 à 13:48:53  profilanswer
 

antsite a écrit a écrit :

 
 Comment récupérer le paramètres this invisible ?




 
bhen "this" justement :D


---------------
mes programmes ·· les voitures dans les films ·· apprenez à écrire

Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation

  [MFC] Fonction CALLBACK membre d'une classe...

 

Sujets relatifs
question de newbie : a quoi sert la fonction break?Fonction sort pour un recordset ADO
fonction JS et les carateres speciaux (non XHTML compliant)[ASP] Fonction 'replace', petit probleme
[PHP] Récuperer une variable d'une fonction...[C] fonction gets() qui ne s'exécute pas dans un switch()
Créer une fonction de recherche[C++ Builder] Quel .h inclure pour la fonction ROUND ?
fonction javascriptRedimensionner un tableau HTML en fonction d'un layer ??
Plus de sujets relatifs à : [MFC] Fonction CALLBACK membre d'une classe...


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR