Использование DDHotKey для создания определяемой пользователем горячей клавиши в моем приложении какао
Успешно реализовав DDHotKey Дейва Делонга, я теперь задаюсь вопросом, возможно ли сделать так, чтобы горячая клавиша определялась пользователем?
Единственный код в приложении, который имеет дело именно с HotKey:
- (IBAction)registerHotKey:(id)sender {
DDHotKeyCenter * c = [[DDHotKeyCenter alloc] init];
[c registerHotKeyWithKeyCode:1 modifierFlags:NSControlKeyMask target:self action:@selector(activateMain:) object:window];
[c release];
а также
- (IBAction) unregisterHotKey:(id)sender {
DDHotKeyCenter * c = [[DDHotKeyCenter alloc] init];
[c unregisterHotKeyWithKeyCode:1 modifierFlags:NSControlKeyMask];
[c release];
}
Я думаю, что было бы необходимо переписать эти разделы, но я не уверен, что это правда, и если это правда, я не уверен, где начать искать.
Мне кажется, что было бы необходимо захватить ввод с клавиатуры и, возможно, сохранить его в виде строки... но кроме этого я действительно не уверен, как поступить.
1 ответ
Да, вы можете сделать их настраиваемыми пользователем. Вам понадобится какой-то пользовательский интерфейс, чтобы пользователь сам набирал сочетание клавиш (в прошлом я использовал Shortcut Recorder). Информация, которую вы получаете от этого элемента управления, должна быть достаточной для передачи DDHotKey
функции регистрации.