Question

I ai créé une demande de cacao NSStatusBar qui se trouve dans la barre d'état du système.

Je veux attribuer un raccourci clavier de sorte que lorsque la serra mes applications et permet de basculer afficher le menu.

Est-ce possible ?, Dans ma recherche et j'expérimentons ai trouvé quelques façons différentes de touches de raccourci globales assignant qui peuvent être activées lorsque l'application est en arrière-plan, mais je ne peux pas trouver un moyen de faire problématiquement le spectacle de menu .

Est-ce possible ?, Si quelqu'un pense une façon d'assigner un raccourci clavier global est le mieux s'il vous plaît l'afficher.

Merci.


L'un des tutoriels hotkey j'ai trouvé sur http://dbachrach.com/blog/2005/11/program-global-hotkeys-in-cocoa-easily/ pour toute personne intéressée.

Était-ce utile?

La solution

Il y a une API réelle raccourci clavier, qui existe encore dans Snow Leopard et est disponible en 64 bits. Il est conçu spécialement à cet effet, à la différence des méthodes NSEvent, qui sont essentiellement juste un emballage à base de blocs autour CGEventTaps.

La différence est que les méthodes NSEvent (ou CGEventTaps directement) vous rendre à tous événement qui arrive, alors que l'API hotkey appelle seulement votre fonction lorsque l'utilisateur appuie votre raccourci clavier.

Autres conseils

Si vous ciblez 10.6+, il y a une nouvelle API pour NSEvent qui peut faire des raccourcis clavier globaux. Pour plus d'informations, consultez ce blog impressionnant: http: // cocoakids. net / global-hotkeys-en-cacao sur neige-léopard

EDIT (longtemps plus tard)

Tooting mon propre klaxon un peu: je ne pourrais jamais faire avancer les choses comme PTHotKey et d'autres bibliothèques de travailler comme je l'attendais, je fini par abandonner et écrit mon propre emballage HotKey. Il a une API très simple (vous lui donnez un code clé, des modificateurs, une cible, et une action), qui prend en charge même des choses amusantes comme les blocs de 10.6. Vous pouvez télécharger ici la source: http://github.com/davedelong/DDHotKey

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top