如何阻止 JDialog 每次都请求焦点?
How to stop JDialog from requesting focus every time?
我刚才写了一个数据绘图仪应用程序,它有一个自动加载功能。加载和重新加载操作都会导致弹出带有取消按钮的 JDialog。在自动重载模式下,这种情况每隔几秒钟发生一次,JDialog window 每次都请求焦点。
我尝试在 JDialog
实例上调用 setFocusableWindowState(false)
,但这没有任何区别。可能是因为它是 JDialog
而不是 Window
的其他子类吗?
更新:setFocusableWindowState(false)
确实有效,我只是愚蠢地 运行 错误的 jar 文件。很长的故事。无论如何,我不会删除这个问题,因为当我在发布它之前做了一些研究时,我看到其他一些人也遇到了类似的问题。这就是解决方案:)
您必须将这两个语句放在 class 扩展 JDialog
的构造函数中
setFocusableWindowState(false);
setFocusable(false);
因此,每次出现 JDialog 时,父容器仍会关注它所拥有的内容。
毕竟 setFocusableWindowstate()
确实有效。这是我自己的愚蠢错误:我是 运行 错误的 jar 文件,即不是修复的那个。感谢大家的建议。
我刚才写了一个数据绘图仪应用程序,它有一个自动加载功能。加载和重新加载操作都会导致弹出带有取消按钮的 JDialog。在自动重载模式下,这种情况每隔几秒钟发生一次,JDialog window 每次都请求焦点。
我尝试在 JDialog
实例上调用 setFocusableWindowState(false)
,但这没有任何区别。可能是因为它是 JDialog
而不是 Window
的其他子类吗?
更新:setFocusableWindowState(false)
确实有效,我只是愚蠢地 运行 错误的 jar 文件。很长的故事。无论如何,我不会删除这个问题,因为当我在发布它之前做了一些研究时,我看到其他一些人也遇到了类似的问题。这就是解决方案:)
您必须将这两个语句放在 class 扩展 JDialog
setFocusableWindowState(false);
setFocusable(false);
因此,每次出现 JDialog 时,父容器仍会关注它所拥有的内容。
setFocusableWindowstate()
确实有效。这是我自己的愚蠢错误:我是 运行 错误的 jar 文件,即不是修复的那个。感谢大家的建议。