我正在我的 Java 应用程序中创建快捷方式。当用户点击 G 时,会弹出一个对话框。但是,我不希望当用户在文本字段中键入内容时发生这种情况。有没有一种方法可以在发生按键释放事件时检测区域的类型,这样我只能在用户不在文本字段中时弹出对话框窗口?
提前致谢。
最佳答案
您可以使用 Window.getFocusOwner() 获取应用程序中具有焦点的组件,然后使用 instanceof 检查。
例如:
public void keyReleased(KeyEvent e)
{
if(e.getKeyCode() == KeyEvent.VK_G && !(myWindow.getFocusOwner() instanceof TextField))
{
showDialog();
}
}
关于java - Java中按键事件发生时检测区域类型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8510306/