Использование 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 функции регистрации.

Другие вопросы по тегам