如果单击此对话框中的按钮,如何防止将焦点移动到非模态对话框?对话框本身包含可聚焦组件(文本字段),但单击一个特定按钮应该只触发操作,将焦点放在另一个窗口中的组件上。
换句话说,如果用户点击里面的特定按钮,窗口不应该获得焦点。
答案 0 :(得分:2)
从JDK 7开始,您应该可以使用:
dialog.setAutoRequestFocus( false );
在早期版本中:
dialog.setFocusableWindowState( false );
dialog.setVisible( true );
dialog.setFocusableWindowState( true );
用户仍然可以点击窗口,但在首次显示时不会获得焦点。
编辑:
button.setFocusable(false);