Echap des Dialog Box

Signaler
Messages postés
8
Date d'inscription
mercredi 10 mars 2004
Statut
Membre
Dernière intervention
23 mars 2004
-
Messages postés
2070
Date d'inscription
mardi 22 avril 2003
Statut
Membre
Dernière intervention
3 juillet 2006
-
Bonjour à tous,

J'ai fait un petit programme à l'aide de Visual C++ 6 en utilisant les boites de dialogues pré-construites.

Je voudrais inhiber la touche Echap qui a pour action d'arreter le programme.

Merci d'avance....

3 réponses

Messages postés
2070
Date d'inscription
mardi 22 avril 2003
Statut
Membre
Dernière intervention
3 juillet 2006
8
avec une boîte de dialogue, appuyer sur ECHAP envoi un message WM_COMMAND avec l'Id ID_CANCEL.

il suffit d'intercepter ce message et de ne pas faire EndDialog. Problème, tu ne pourras pas non plus fermer par la croix (ce qui envoi le même message).

En MFC, il faut surcharger OnCancel et ne pas appeler CDialog::OnCancel().
Messages postés
2671
Date d'inscription
vendredi 25 janvier 2002
Statut
Membre
Dernière intervention
6 février 2013
2
Ca veut dire quoi surcharger une fonction ?
Messages postés
2070
Date d'inscription
mardi 22 avril 2003
Statut
Membre
Dernière intervention
3 juillet 2006
8
ca veut dire redéfinir une fonction 'virtual' qui existe dans la classe de base pour en modifier le comportement initial.
(overriden function en MFC).
le fonction OnCancel de la classe CDialog ferme la boîte de dialogue. En redefinissant cette fonction dans une classe dérivée, on peut modifier ce comportement.