Echap des Dialog Box

cs_Grand_steak Messages postés 8 Date d'inscription mercredi 10 mars 2004 Statut Membre Dernière intervention 23 mars 2004 - 22 mars 2004 à 15:54
ymca2003 Messages postés 2070 Date d'inscription mardi 22 avril 2003 Statut Membre Dernière intervention 3 juillet 2006 - 24 mars 2004 à 12:06
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

ymca2003 Messages postés 2070 Date d'inscription mardi 22 avril 2003 Statut Membre Dernière intervention 3 juillet 2006 7
23 mars 2004 à 23:24
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().
0
DeAtHCrAsH Messages postés 2670 Date d'inscription vendredi 25 janvier 2002 Statut Membre Dernière intervention 6 février 2013
24 mars 2004 à 08:01
Ca veut dire quoi surcharger une fonction ?
0
ymca2003 Messages postés 2070 Date d'inscription mardi 22 avril 2003 Statut Membre Dernière intervention 3 juillet 2006 7
24 mars 2004 à 12:06
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.
0
Rejoignez-nous