Bonjour,
J'ai un petit souçis pour récupèrer l'adresse d'une fonction CallBack dans une classe.
MaClasse.h :
------------
class MaClasse
{
protected:
int CALLBACK FctCallBack(LPARAM lParam1,LPARAM lParam2);
typedef int __stdcall FonctionCallBack(LPARAM,LPARAM);
FonctionCallBack *fcb; // Pointeur vers fonction Callback
public:
MaClasse(); // Constructeur
virtual ~MaClasse(); // Destructeur
};
MaClasse.cpp :
--------------
MaClasse::MaClasse() // CONSTRUCTEUR
{
// Récupère adresse fonction CallBack
fcb=FctCallBack; // Erreur Compilation ICI
}
MaClasse::~MaClasse() // DESTRUCTEUR
{
}
// Fonction CallBack
int CALLBACK MaClasse::FctCallBack(LPARAM lParam1,LPARAM lParam2)
{
return 0;
}
J'ai une erreur de compilation:
error C2440: '=' : cannot convert from 'int (__stdcall MaClasse::*)(long,long)' to 'int (__stdcall *)(long,long)'
There is no context in which this conversion is possible
Je tourne en rond..après plusieurs tests de cast différents je ne m'en sors pas.
Est-il possible de récupèrer l'adresse d'une fonction CallBack dans une classe ?
Si oui quelle est la solution svp ?
Merci.