2010-08-09 26 views
4

Dans mon projet VB6, j'utilise uniquement de barre d'outils dans le principal MDI De (Non menubar), la barre d'outils a de grandes photos dénotant des actions telles que New, Enregistrer, vue, aide, etc. Je voulais savoir s'il y avait un moyen de créer un raccourci clavier pour ces actions. Pour autant que je sache, les propriétés du contrôle de la barre d'outils de MS Windows Common Controls 6.0 ne montrent aucune option relative pour le faire. Comme le formulaire MDI n'a aucun événement clé, je ne peux pas créer de raccourcis en associant des clés. Je ne veux pas de barre de menu dans mon formulaire car il y a très peu d'éléments, donc seule la barre d'outils fait le travail. S'il vous plaît suggérer une idée d'avoir des raccourcis pour les boutons de la barre d'outils ......: - | Merci à l'avance .............Créer raccourcis clavier pour le contrôle barre d'outils en VB6

Répondre

0

Une façon est d'utiliser un crochet WH_KEYBOARD local, this article explique comment (et fournit une bibliothèque).

+0

Merci beaucoup, qui a donné de nouvelles possibilies à mon projet .... :-) Mais je distribuerai mon projet sous licence GPL v3 GNU et que je dois déployer vbalHook6.DLL avec l'application, je ne suis pas sûr Quelles sont les conditions de licence de vbaccelerator.com. C'est ok si j'ai besoin de déployer mon application sous plusieurs licences, car je vais certainement donner crédit aux auteurs respectifs. – Kushal

0

Ajouter un événement clé de votre formulaire. Vous pouvez ensuite traiter les raccourcis en leur demandant d'appeler la même fonction que celle qui aurait été appelée sur l'événement de souris vers le bas pour la barre de menus.

Par exemple, vous pouvez avoir quelque chose comme

public sub SaveItem_Clicked() 
    DoSave() 
end sub 

Ensuite dans votre chèque keypress Alt + S etc, et l'ont appelé DoSave()

+1

Ok, mais quand mon application démarre, il ne montre que principale forme MDI, qui ne prend pas en charge l'événement clé. Comme le MDI en cours d'exécution n'a aucune forme enfant active, et je veux un raccourci (par exemple, Ctrl + N) pour lancer le formulaire enfant 'Nouveau' dans MDI. Comme vous l'avez dit, je peux utiliser Ctrl + S pour enregistrer les modifications apportées aux champs de la fenêtre « Nouveau », comme cette forme est une forme normale et soutient donc les événements clés, mais comment puis-je obtenir des raccourcis de travail avec la forme MDI ayant seulement Barre d'outils sans formulaire enfant affiché ....? – Kushal