Comment arrêter la fermeture de l'application de boîte de dialogue mfc en appuyant sur ESC (touche Échap). Après avoir exécuté mon application si j'appuie sur la touche ESC, la fenêtre est fermée. Comment cela peut-il être arrêté? J'utilise VC++ 6.0.Comment arrêter la fermeture de l'application de boîte de dialogue mfc en appuyant sur ESC
3
A
Répondre
2
Il existe différentes manières de procéder. Vous pouvez:
- Créer un gestionnaire OnCancel et faire ce que vous voulez avec la notification Annuler
- Vous pouvez gérer OnClose événement et faire ce que vous voulez.
- Vous pouvez remplacer PreTranslateMessage et vérifier la touche Echap ici et faire ce que vous voulez.
Vérifiez this pour des exemples de code.
Pour un exemple PreTranslateMessage, voir this
4
Vous pouvez remplacer l'événement OnCancel et seulement aller de l'avant avec l'appel OnCancel si IDCANCEL est l'élément ciblé.
void CMyDialog::OnCancel(void)
{
if(GetDlgItem(IDCANCEL) == GetFocus())
{
CDialog::OnCancel();
return;
}
}
1
Remplacer OnCancel et ne le font pas appel la mise en œuvre de la classe de base. Ne pas s'approcher de OnClose à moins de savoir ce que vous faites, vous risquez de casser le comportement de Alt-F4 et du bouton X.
Je l'ai toujours considéré PreTranslateMessage pour des choses comme ce que l'utilisation d'une arme thermonucléaire pour casser une noix, mais si elle flotte votre bateau ...
Questions connexes
- 1. VC++: Comment empêcher esc de fermer une boîte de dialogue (pas mfc)
- 2. boîte de dialogue dans un programme MFC
- 3. Boîte de dialogue MFC Open Folder
- 4. Taille de la boîte de dialogue MFC Question
- 5. Comment puis-je hériter d'une boîte de dialogue MFC?
- 6. Boîte de dialogue de style Lightbox dans l'application MFC
- 7. Fermeture de la boîte de dialogue de fermeture lors de l'extraction de la liste des serveurs SQL
- 8. fermeture d'une boîte de dialogue après un délai
- 9. Application MFC se bloque lors de la fermeture
- 10. Cloner des boutons de dialogue jqueryui en haut de la boîte de dialogue
- 11. MFC - Exécuter le code juste après l'affichage de la boîte de dialogue (équivalent .NET de Form.Shown)
- 12. Comment créer une boîte de dialogue en utilisant jquery
- 13. Exécuter le code après la fermeture de la boîte de dialogue et n'est pas visible
- 14. Des répercussions sur l'affichage de la boîte de dialogue raccourcie?
- 15. Réduction de l'application Mfc avec la boîte de dialogue ouverte Qt
- 16. dans mfc comment implémenter le dialogue ancrable?
- 17. Boîte de dialogue modale
- 18. Laisser ma boîte de dialogue MFC recevoir des événements de frappe avant ses contrôles (MFC/Win32 équivalent de WinForms "KeyPreview")
- 19. La boîte de dialogue JQuery UI peut-elle mémoriser sa position entre l'ouverture et la fermeture?
- 20. En-tête de la boîte de dialogue Windows
- 21. Boîte de dialogue wpf dans la page
- 22. boîte de dialogue de couleur
- 23. Boîte de dialogue non fermée sur Windows Mobile
- 24. Boîte de dialogue de défilement dans MFC sous Win CE/Windows Mobile
- 25. Actualiser UpdatePanel après une boîte de dialogue "File Download" Boîte
- 26. Boîte de dialogue intégrée Excel
- 27. Comment afficher une boîte de dialogue openfile sur Windows?
- 28. Boîte de dialogue dans SCSF
- 29. Sécurisation de la boîte de dialogue de téléchargement de fichier
- 30. Boîte de dialogue jQuery UI - problème avec événement à la fermeture
OnClose (le gestionnaire désigné de WM_CLOSE) n'est pas appelé par la touche Echap. –