我的应用程序需要检测启动早期是否按下CONTROL
键,如果是,则更改启动顺序。
我需要做的是非常类似于MouseInfo
如何获得指针位置(不等待事件通过AWT处理机制)。
MouseInfo.getPointerInfo().getLocation();
键盘上是否存在类似的内容?即检测某个键是否被按下现在?
请注意,注册听众对我不起作用,因为一旦鼠标事件开始处理,那么它已经太晚了#34; - 我的应用程序已经启动,我需要在启动期间停止某些操作。
// note: this doesn't work. the event is received AFTER app has started
final AWTEventListener listener = new AWTEventListener() {
@Override
public void eventDispatched(AWTEvent event) {
if (!fired && ((KeyEvent) event).isControlDown()) {
fired = true;
System.out.println(event);
dontDoSomethingHeavyDuringStartup();
}
}
};
Toolkit.getDefaultToolkit().addAWTEventListener(listener, AWTEvent.KEY_EVENT_MASK);