我出现了一个小的对话框,在这个框架内有一系列按钮和一个文本框.我需要框架能够检测到用户何时将焦点放在屏幕上的其他内容上(除了框架及其组件之外的任何东西),因此我可以关闭框架.关于如何解决这个问题的任何建议?我一直在尝试聚焦解决方案几个小时,没有解决方案!
它提供的WindowEvent参数可以告诉您窗口是否通过getNewState()方法失去焦点.
class MyFocusLostListener implements WindowStateListener {
public void windowStateChanged(WindowEvent e) {
if (e.getNewState() == WindowEvent.WINDOW_LOST_FOCUS) {
e.getWindow().setVisible(false);
}
}
}
Run Code Online (Sandbox Code Playgroud)