Accueil > Forum > > > > Evenement touche presse sur edit
Evenement touche presse sur edit
dimanche 25 mars 2007 à 11:54:41 |
Evenement touche presse sur edit

NairodDorian
|
Bonjour, Je rencontre un petit blocage avec l'API Win32. BOOL CALLBACK AppDlg(HWND hdlg, UINT msg, WPARAM wparam, LPARAM lparam) { switch (msg) {case WM_INITDIALOG:SetClassLong(hdlg, GCL_HICON, (LONG)LoadIcon(NULL, IDI_APPLICATION)); SetDlgItemInt(hdlg, IDC_EDIT_CM, 18, FALSE); return TRUE;case WM_COMMAND:switch (LOWORD(wparam)) {/* Analyse des menus */case ID_APPLICATION_QUITTER:case IDCANCEL:EndDialog(hdlg, 0); return TRUE;case ID_RESULTAT_NETTOYER:if (MessageBox(hdlg, TEXT("Voulez vous supprimer toute votre configuration ?"),TEXT( "Question"), MB_YESNO | MB_ICONQUESTION) == IDYES) {/* Supprime toute la configuration utilisateur */SetDlgItemInt(hdlg, IDC_EDIT_CM, 18, FALSE); SetDlgItemText(hdlg, IDC_EDIT_MAX, NULL); SetDlgItemText(hdlg, IDC_EDIT_VALUE, NULL); SendDlgItemMessage(hdlg, IDC_LIST_VALUE, LB_RESETCONTENT, 0, 0); SendDlgItemMessage(hdlg, IDC_LIST_RESULT, LB_RESETCONTENT, 0, 0); break;} break;} case WM_KEYDOWN:if (LOWORD(wparam) == IDC_EDIT_VALUE) {/* Recupere le code de la touche */switch (wparam) {case VK_LEFT:/* NE FAIT RIEN */break;default:/* blabla */} } break;default:return FALSE;} return FALSE;} int APIENTRY WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine, int nShowCmd){ DialogBoxParam(hInstance, MAKEINTRESOURCE(IDD_APP), NULL, (DLGPROC)AppDlg, 0); return 0;}
Je cherche a recupere l'evenement WM_KEYDOWN correspondant au controle IDC_EDIT_VALUE. Je teste alors si la touche presse est la fleche de gauche mais ca ne fonctionne jamais !
Pouvez vous m'aider ? Merci d'avance
|
|
dimanche 25 mars 2007 à 12:38:55 |
Re : Evenement touche presse sur edit

racpp
|
Réponse acceptée !
Salut, Tu peux sous-classer ton Edit:
WNDPROC OldEditProc;
LRESULT CALLBACK EditProc(HWND hwnd, UINT message, WPARAM wParam, LPARAM lParam) { switch(message) { case WM_GETDLGCODE: return (DLGC_WANTALLKEYS | CallWindowProc(OldEditProc, hwnd, message, wParam, lParam));
case WM_KEYDOWN: MessageBox(0,TEXT("Touche pressée"),0,0); break; }
return CallWindowProc(OldEditProc, hwnd, message, wParam, lParam); }
BOOL CALLBACK AppDlg(HWND hdlg, UINT msg, WPARAM wparam, LPARAM lparam)
{ switch (msg) { case WM_INITDIALOG: HWND hEdit; hEdit=GetDlgItem(hdlg, IDC_EDIT_VALUE); OldEditProc=(WNDPROC)SetWindowLong(hEdit, GWL_WNDPROC,(LONG)EditProc); SetClassLong(hdlg, GCL_HICON, (LONG)LoadIcon(NULL, IDI_APPLICATION)); SetDlgItemInt(hdlg, IDC_EDIT_CM, 18, FALSE); return TRUE; } //..... }
L'événement de pression sur une touche est donc récupéré dans la procédure de sous-classement EditProc().
|
|
dimanche 25 mars 2007 à 13:04:53 |
Re : Evenement touche presse sur edit
|
Cette discussion est classée dans : case, edit, hdlg, wparam, idc
Répondre à ce message
Sujets en rapport avec ce message
faire progresser....une progress bar !! [ par Xs ]
c tout bete, mais je sais pas comment faire. ou plutot lui dire a quoi comparer sa progression par rapport au chargement de quelque chose.mon code : #
objet non initialisé (API Win32) [ par Xs ]
salut !voici mon code, d'abord :#include #include #include "resource.h"LRESULT CALLBACK DlgProc(HWND hDlg, UINT msg, WPARAM wParam, LPARAM lParam){cha
positions [ par Xs ]
salut ! je cherche et je trouve pas, ou alors je sais pas m'en servir, comment on recupere la position actuelle du fenetre(dialogbox).j'ai essayé des
touches [ par Xs ]
voila, j'ai essayé de tester des touches afin que, par exemple, lorsque l'on appuie sur Y, une message box apparaisse.j'ai recupérer ce code venat de
ChooseColor bloqué ? [ par NeKoF ]
Salut tous le monde !J'ai un gros soucis ma boite de dialogJe vous explique :Dans ma boite de configuration, je souhaite sélectionner une couleur en c
encore un pb de timer!!!!! [ par melkiorlenecrarque ]
je souhaite, en appuyan sur un boutton, declancher un timer ki ajoute a chak seconde une unité au caption de ce meme bouton mé sa marche pa!!!voici mo
Bouton fermer [ par PsyCaDi ]
Je viens de créer un projet en VC6 et lorsque j'ai lancé la fenêtre, la croix rouge pour fermer, ne sert à rien.Idem si je fait clique droit et Fermet
pb affichage ComboBox dans Dialog [ par Guillemouze ]
Salut tout le monde,j'ai un souci d'affichage de mon combo dans un dialog. Quand je click sur la fleche pour afficher la liste, il ne m'affiche rien!P
Gros problème dans une dialogbox [ par julien_boss ]
Luu à tous :voilà alors je ne comprends pas bien ce qui se passe : j'ai une boite de dialogue, 2 EDITTEXT qui se suivent dans leur création (je ne sai
Prise en charge des tabulations [ par SAKingdom ]
Allo.Ceci est pour les membres club uniquement.Quand on clique sur la petite loupe à droite d'un fichier dans un zip, il ouvre une fenêtre individuell
Livres en rapport
|
Derniers Blogs
JOYEUX ANNIVERSAIRE NIXJOYEUX ANNIVERSAIRE NIX par ebartsoft
Souhaitons un bon et joyeux anniversaire à notre hôte à tous, Nix.
Je ne le répéterais jamais assez mais sans lui rien ne serait possible. Il défit en permanence les lois de la gravité et comme il le dit si bien, si tu lui fais confiance ça devra...
Cliquez pour lire la suite de l'article par ebartsoft IMAGINE CUP 2012, MAKE A SIGN EN FINALEIMAGINE CUP 2012, MAKE A SIGN EN FINALE par junarnoalg
Voilà qui est fait, la nouvelle est officielle ! L'équipe belge "Make a Sign" va au pays des kangourous défendre son projet dans la catégorie Software Design. http://www.imaginecup.com/CompetitionsContent/Competition/WorldwideFinalists.aspx V...
Cliquez pour lire la suite de l'article par junarnoalg KINECT 1.5 IS OUT !KINECT 1.5 IS OUT ! par Vko
La version 1.5 du Kinect For Microsoft vient tout juste de sortir ! Plein de nouveautés: Tracking de squelette en Near Mode Détection en position assise Détection faciale avec un SDK dédié Documentation et des guideline (enfin) Un out...
Cliquez pour lire la suite de l'article par Vko LES ACTUALITéS DE LA SEMAINE SUR C2I.FR (14 MAI - 20 MAI) LES ACTUALITéS DE LA SEMAINE SUR C2I.FR (14 MAI - 20 MAI) par richardc
Mise à jour des Web API du 14 Mai
Réservez dès maintenant votre journée du 20 juin pour le Windows Azure Dev Camp 2012 à Paris
Mise à jour de Team Foundation Service
MechCommander 2 sur Windows 8
Entity Framework 5 Release Candidate e...
Cliquez pour lire la suite de l'article par richardc REACTIVE EXTENSIONS : CONSOMMER DES SERVICES AVEC RX PARTIE 3, LES PIèGES à éVITERREACTIVE EXTENSIONS : CONSOMMER DES SERVICES AVEC RX PARTIE 3, LES PIèGES à éVITER par Groc
Une mauvaise utilisation de rx lors de l'écriture d'une couche d'accès à des services peut conduire à des cas embarassants avec des erreurs mal gérées, des appels qui ne partent lorsqu'ils le devraient, et même des résultats incorrects . le tout nuis...
Cliquez pour lire la suite de l'article par Groc
Logiciels
sDEVIS-FACTURES vlPRO (8.1.0.3)SDEVIS-FACTURES VLPRO (8.1.0.3)sDEVIS-FACTURES vlPRO a été mis au point pour les particuliers, créateurs, entrepreneurs, artisa... Cliquez pour télécharger sDEVIS-FACTURES vlPRO 974 Application Server (12.2.4.6)974 APPLICATION SERVER (12.2.4.6)Développez de puissantes applications dans un environnement de 'cloud computing', clusterisé, séc... Cliquez pour télécharger 974 Application Server vPicture (1.4.2.1)VPICTURE (1.4.2.1)Avec vPicture, hébergez vos images facilement et rapidement.
vPicture est un utilitaire simple, ... Cliquez pour télécharger vPicture Easy-Planning (2.2.1.6)EASY-PLANNING (2.2.1.6)Easy-Planning permet de créer des plannings sous la représentation de diagrammes et est adapté au... Cliquez pour télécharger Easy-Planning COM-BACKUP (2.0)COM-BACKUP (2.0)
COM-BACKUP est un logiciel de sauvegarde qui permet de planifier les sauvegardes de vos dossiers ...
Cliquez pour télécharger COM-BACKUP
|