【问题标题】:How to prevent moving focus to non modal dialog if a button in this dialog is clicked? [closed]如果单击此对话框中的按钮,如何防止将焦点移动到非模态对话框? [关闭]
【发布时间】:2016-11-12 01:07:18
【问题描述】:

如果单击此对话框中的按钮,如何防止将焦点移动到非模态对话框?对话框本身包含可聚焦的组件(文本字段),但单击一个特定按钮只会触发操作,将焦点留在另一个窗口中的组件上。

换句话说,如果用户点击里面的特定按钮,窗口不应该获得焦点。

【问题讨论】:

  • 您能发布您的代码并描述您尝试做的事情吗?

标签: java swing modal-dialog focus


【解决方案1】:

从JDK 7开始你应该可以使用了:

dialog.setAutoRequestFocus( false );

在早期版本中:

dialog.setFocusableWindowState( false );
dialog.setVisible( true );
dialog.setFocusableWindowState( true );

用户仍然可以点击窗口,但在首次显示时不应获得焦点。

编辑:

button.setFocusable(false);

【讨论】:

  • 在我的情况下,如果用户单击内部的特定按钮,窗口不应获得焦点。
  • @dpolivaev,见编辑。如果它没有帮助,然后发布一个正确的 SSCCE 来证明你的问题。
猜你喜欢
  • 2022-01-06
  • 2012-02-18
  • 2015-01-17
  • 1970-01-01
  • 2018-02-20
  • 2012-08-22
相关资源
最近更新 更多