Je veux intercepter les touches qui sont activées lorsque l'un de mes dialogues s'afficheComment gérer une touche dans MFC?
Répondre
Configurez des accélérateurs qui envoient le WM_COMMAND approprié ou répondent aux messages WM_KEYDOWN/UP et surveillent vos touches.
Plus d'infos ici:
http://www.codeproject.com/KB/dialog/pretransdialog01.aspx
Et le code utile de cet article:
BOOL CPreTransTestDlg::PreTranslateMessage(MSG* pMsg)
{
if(pMsg->message==WM_KEYDOWN)
{
if(pMsg->wParam==VK_RETURN)
pMsg->wParam=VK_TAB;
}
return CDialog::PreTranslateMessage(pMsg);
}
Pour l'adapter à d'autres touches, consultez [WINUSER.H] (http://www.woodmann.com/fravia/sources/WINUSER.H) – Casebash
Vous devriez regarder dans hooking keyboard events. c'est un lien CodeGuru mais il y a beaucoup, beaucoup de ressources disponibles lorsque vous Google pour How to hook keyboard events with MFC.
Qu'est-ce que vous Je trouverai dans ces articles que le clavier et/ou l'accrochage d'événements est la terminologie de choix. "Intercept" est utilisé pour décrire le processus. Et une note de plus: Faites attention où vous accrochez! Vous pouvez vous connecter à votre boîte de dialogue ou à plusieurs autres niveaux. (Btw, les enregistreurs de frappe sont des chevaux de Troie bien connus qui emploient cette tactique.)
Merci. Je n'étais probablement pas clair, mais j'essaie d'intercepter les touches d'une boîte de dialogue que je crée, pas celle d'un autre programme. Je veux pouvoir activer facilement les fonctions de débogage – Casebash
L'accrochage au clavier fonctionnera que la fenêtre cible soit créée ou non. Le processus est généralement utilisé pour accrocher d'autres fenêtres, mais peut être utilisé pour accrocher les vôtres. –
- 1. IME - Comment gérer la touche Appuyez sur
- 2. Comment gérer les messages provenant de contrôles créés dynamiquement dans une application MFC?
- 3. Comment puis-je gérer une touche de raccourci dans chaque fenêtre WPF?
- 4. Comment gérer la touche enfoncée dans une console Linux en C?
- 5. Comment dessiner QGraphicsItem dans une vue MFC
- 6. Comment imprimer QGraphicsTextItem dans une application MFC
- 7. Comment utiliser CMenu dans une application MFC?
- 8. comment gérer les clés de propriétés dans CListCtrl?
- 9. Comment déployer une application MFC?
- 10. Comment désactiver une touche particulière dans .NET?
- 11. Comment intercepter une touche dure enfoncée dans un service?
- 12. C# Comment désactiver une touche
- 13. Comment gérer le raccourci ESC dans une fenêtre contextuelle javascript
- 14. Python: Comment générer une touche?
- 15. Comment empêcher une boîte de dialogue MFC de gérer les clés d'entrée et d'échappement et de ne pas le transmettre
- 16. Comment modifier une cellule dans une zone de liste MFC?
- 17. Puis-je gérer une touche ALT + TAB dans ma page Web?
- 18. Comment gérer un événement Ctrl + pression de touche dans Excel VSTO?
- 19. Force annuler une touche iphone
- 20. Comment puis-je gérer la touche Retour dans un contrôle CEdit?
- 21. Attraper Entrer une touche à partir d'un CComboBox
- 22. Touche AutoHotKey SÉQUENCE, pas seulement une touche de raccourci unique
- 23. En appuyant sur une touche dans C#
- 24. Gérer plusieurs événements vous maintenez la touche C fenêtres # forme
- 25. Manipulation touche
- 26. Comment afficher un contrôle MFC dans une application Windows Forms?
- 27. Comment éviter d'utiliser un bouton dans une application MFC?
- 28. Comment rendre une légende de bouton en gras dans MFC?
- 29. Comment concevoir une chaîne PostMessage plus propre dans WinApi/MFC
- 30. Comment créer une étiquette en gras et italique dans MFC?
Plus d'informations nécessaires – Craig
@Craig: Quelle information? – Casebash
Langue, plate-forme, etc. MVC est générique et utilisé sur le Web, Windows, les appareils mobiles. Je peux facilement vous donner et répondre pour ASP.NET MVC mais je n'ai aucune idée si c'est ce que vous voulez. – Craig