J'essaye de capturer la clé F10 dans Delphi, mais il semble continuer à activer le menu parce qu'il est converti de vk_F10 en vk_menu ou quelque chose.Capturer F10 dans Delphi
Répondre
Si vous êtes sous Windows, voici un code pour faire un crochet du clavier en utilisant l'API Windows: http://www.delphitricks.com/source-code/windows/install_a_keyboard_hook.html
L'événement OnKeyDown suivant ajouté à ma forme principale devrait fonctionner. Notez que vous devez définir le paramètre clé sur zéro pour empêcher l'activation du menu:
procedure TForm1.FormKeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
begin
if key = VK_F10 then begin
Label1.Caption := 'You hit F10';
key := 0;
end;
end;
En effet. Mais pour empêcher F10 d'activer le menu, le paramètre Key doit également être réglé sur 0. – mghie
En fait, il n'active pas le menu tel quel. –
cela active probablement le menu, mais cela sera perdu par le changement de focus du showmessage. Essayez de définir une légende d'étiquette à la place, et voir si elle le fait alors (avec un menu présent bien sûr!) – mj2008
- 1. Désactiver F10 d'activer le menu de la fenêtre dans WPF
- 2. "Les bases de Delphi" dans Delphi 2009
- 3. Capturer l'écran dans une image bitmap
- 4. capturer la sortie dans ASP.NET MVC
- 5. Comment capturer l'événement d'impression dans PrintPreviewDialog
- 6. capturer des événements javascript dans C#
- 7. MFC: Capturer les redimensionnements
- 8. Impossible de capturer l'écran
- 9. ASMX dans Delphi studio
- 10. JFreeChart-like dans Delphi
- 11. Polymorphisme statique dans Delphi
- 12. delphi dans vista
- 13. Désactiver ECO dans Delphi
- 14. Abstraction dans Delphi
- 15. Comment capturer la sortie d'execvp
- 16. Comment capturer une variable (C#)
- 17. Regex pour capturer les variables
- 18. Comment puis-je capturer des touches de modification lors du démarrage d'une application Delphi pour forcer un comportement
- 19. Fonctionnalité JQuery TypeWatch dans Delphi
- 20. Libérer plusieurs objets dans delphi
- 21. Paramètres nommés/facultatifs dans Delphi?
- 22. Vista reconnaissance vocale dans Delphi
- 23. Cntl + z dans delphi 4.0
- 24. erreur dbExpress dans Delphi 2007
- 25. FitNesse pour Delphi 2006/Delphi 2007/Delphi 2009
- 26. comment capturer un clic de souris dans actionscript 3.0
- 27. Comment capturer l'image de la webcam du client dans asp.net
- 28. essayant de capturer la sortie javac dans bash shell
- 29. Comment capturer des requêtes XMLHTTP dans un contrôle Webbrowser?
- 30. Comment capturer la sortie PHP dans une variable?
Y at-il une raison particulière pour laquelle vous souhaitez désactiver le comportement standard de l'interface utilisateur de Windows? Ce n'est pas parce que vous n'utilisez pas F10 pour activer le menu que vos clients ne le feront pas. –
Commentaire très important par Rob Kennedy - vous ne devriez jamais utiliser l'un des raccourcis clavier Windows standard (voir http://msdn.microsoft.com/en-us/library/bb545461.aspx) pour une commande différente de celle par défaut, et F10 est parmi eux. – mghie
À moins, bien sûr, que ce ne soit pas pertinent. Si vous écrivez une application en plein écran, par exemple, vous ne voulez certainement pas que l'utilisateur tire vers le haut le système de menu Windows. (Là encore, vous n'aurez probablement pas de menus dans ce cas, mais vous comprendrez l'idée générale ...) –