Глобальный ускоритель в java swing - PullRequest
2 голосов
/ 17 июня 2011

Я сделал ускорители в моем java-интерфейсе с помощью setAccelerator (), и они работают, если в фокусе не находится что-то с такой же привязкой ключа.Есть ли способ включить их глобально, чтобы действие запускалось независимо от того, что, если окно имеет фокус?

jmi.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_N, Event.CTRL_MASK))

1 Ответ

4 голосов
/ 17 июня 2011

Взгляните на Глобальная диспетчеризация событий .Вы должны иметь возможность использовать KeyEventDispatcher для перехвата любого ключевого события для выполнения пользовательской обработки.

...