Я работаю над приложением, которое использует Shapakovski для отличного MASShortcut repository. Я ссылаюсь на это, чтобы спросить, есть ли способ зарегистрировать ярлык для Capslock так же, как это делает Шпаковский в своем репозитории?Поймать пресс-капсулу в приложении для какао
Похоже, что я не могу зарегистрировать 0xffff (Key Codes, это Capslock) как действительный ярлык. Даже если я объединю его с клавишами-модификаторами. Я также хочу поймать прессу, пока она не переключит функциональность Capslock в системе.
Я знаю, что могу прослушивать все нажатия клавиш и просто захватывать Capslock, когда это происходит, но я хочу избежать такого поведения, так как считаю, что это потенциально небезопасно, а также уменьшит общую производительность системы.
Редактировать: Я уже рассмотрел некоторые рабочие библиотеки C++/C# для Windows, которые реализуют эту функцию. Они, похоже, постоянно переопределяют флаг Capslock системы, который я нашел довольно странным. Я в основном с 2 проблемы здесь:
1. Как поймать прессу Capslock без нажатия клавиши слушателю все время
2. Как это сделать, не вызывая функциональные Capslock системы.
Если я сделаю это, я буду в опасности быть отвергнутым как потенциальный «регистратор ключей», так как я смотрю на каждое нажатие клавиши? Будет ли это также вызываться, если приложение не находится в фокусе/в фоновом режиме? –
Я не думаю, что это вызовет проблемы с App Store. Подклассификация sendEvent: сама по себе не запрещена. Тем не менее, он будет вызван только тогда, когда ваше приложение сосредоточится. – Volker
Я был отклонен гораздо меньше, чем это. ;-) Мне нужна реализация, которая работает, когда приложение находится в фоновом режиме. :( –