cs_Goba
Messages postés1Date d'inscriptionjeudi 27 juin 2002StatutMembreDernière intervention 7 octobre 2002
-
7 oct. 2002 à 23:59
cs_llo
Messages postés45Date d'inscriptionjeudi 10 octobre 2002StatutMembreDernière intervention 6 décembre 2002
-
16 oct. 2002 à 09:13
Bon en gros, je crée ma fenetre principale puis plusieurs EditBox dans la fonction WinMain, et je voudrais que quand on modifie une des editbox, ca affiche la nouvelle valeur dans une autre editbox.
Pour ca je vais dans WndProc, je sais faire dans la theorie (avec GetWindowText, SetWindowText ... etc), mais les editbox sont pas visibles dans WndProc. En faite je peux voir que la fenetre principale qui est passée en parametre. Help :)
cs_llo
Messages postés45Date d'inscriptionjeudi 10 octobre 2002StatutMembreDernière intervention 6 décembre 2002 16 oct. 2002 à 09:13
salut,
tu as 2 autres possibilités:
- la 1ère : après la création des zones d'édition, tu peux les sous-classer (ie : détourner la gestion des messages )... Je ne te le conseille que si tu maîtrises...
- la seconde est d'intercepter le message WM_COMMAND dans la gestion des messages de la fenêtre parent :
Au passage, utilise les crackers de message pour plus de lisibilité
void Exemple_OnCommand(HWND hWnd, int id, HWND hwndCtl, UINT codeNotify)
{
...
switch(id){
// sur envoie d'un message à la zone d'édition
case CM_EDIT:
switch (codeNotify){
case EN_KILLFOCUS:
MessageBox(hWnd, (LPSTR)"perte du focus", "Message", MB_OK|MB_ICONSTOP);
break;
...
}
Dans l'id tu as l'identifiant du contrôle, et dans la notification, le message ayant généré le WM_COMMAND.....