Я пытаюсь создать утилиту, которая не открывает окно при выполнении, и это будет активировано от горячей клавиши; я считал, что в настоящее время Какао не имеет функции для этого, и что я должен использовать Углеродную функцию устаревшую.
Нет ли действительно способ использовать глобальные горячие клавиши в Какао?Что мне делать: ожидайте Какао, чтобы представить функцию для этого или использовать углеродную функцию, пока подобная функция не будет представлена в Какао?
Используйте функцию RegisterEventHotKey
диспетчера событий углерода. Эта функция поддерживается в 64-битной (обратите внимание, что в ней отсутствует примечание о доступности «недоступно в 64-битной»).
И наоборот, новый метод NSEvent addGlobalMonitorForEventsMatchingMask: handler:
в Snow Leopard это не самый простой способ реализовать горячую клавишу. Во-первых, это требует, чтобы у пользователя был доступ к включенным вспомогательным устройствам; кроме того, он требует, чтобы вы самостоятельно проверяли каждое событие по сравнению с системой RegisterEventHotKey
, которая вызывает вашу функцию обратного вызова только тогда, когда пользователь нажимает конкретную клавишу, для которой вы зарегистрировались.
Взгляните на Shortcut Recorder ( http://wafflesoftware.net/shortcut/ ), фреймворк, который использует Carbon Event Manager для глобальных горячих клавиш, он также позволяет вам измените пользователя, чтобы изменить HotKey (если это то, что вы хотите).
И см. Этот Проект / Код о том, как его реализовать: http://github.com/sdegutis/SDGlobalShortcuts .