problème SendMessage en utilisant ON_MESSAGE
Bonjour,
Je rencontre actuellement 1 problème pour la transmission de message sous MFC.
En effet, jusque là, je réussissais à transmettre des messages via ON_COMMAND. Mais, maintenant j'ai besoin d'envoyer "des paramètres" avec les messages.
ON_COMMAND ne me permet pas de faire ça puisque la fonction de traitement du message doit être de type AFX_PMSG (c à d : void (void) )
En essayant d'utiliser ON_MESSAGE dans un premier temps sans les parametres, le message n'est pas réceptionné, pas de pb de compilation, c'est juste que tout se passe comme si le message n'était pas envoyé ou reçu.
J'ai une classe CFormView principal Ctest_windowView qui est composé d'un unique boutton, lorsqu'on appuie sur ce boutton, il y a une série de traitement (dont l'ouverture d'une fenetre CDialog nommé plog) puis un
Code:
::SendMessage(HWND_BROADCAST,ID_PROGLOG,(WPARAM)0,(LPARAM)0);
Voici mon code:
Dans Ressource.h :
Code:
#define ID_PROGLOG (WM_APP+1)
Dans plog.h:
Code:
1 2
| afx_msg LRESULT test2(WPARAM wParam, LPARAM lParam);
DECLARE_MESSAGE_MAP() |
Dans plog.cpp:
Code:
1 2 3 4 5 6 7 8 9
| BEGIN_MESSAGE_MAP(plog, CDialog)
ON_BN_CLICKED(IDOK, &plog::OnBnClickedOk)
ON_MESSAGE(ID_PROGLOG, & plog::test2)
END_MESSAGE_MAP()
LRESULT plog::test2(WPARAM wParam, LPARAM lParam){
UpdateData(TRUE); //cette mise a jour n'a pas lieu
return 0;
} |