【发布时间】:2015-04-01 19:57:52
【问题描述】:
这个概念很简单。我想在所有其他当前打开的窗口/应用程序前面添加一个 JOptionPane 框架。
我想在没有 Applescript(外部java)或任何第三方库之类的帮助下完成此操作。纯java。
我已经全面搜索了这个,但找不到一个单一的非第三方解决方案。 (.toFront() 只是“聚焦”在窗口上,但实际上并不显示在前面。)
JOptionPanel 和 JDialog 代码:
JOptionPane optionPane = new JOptionPane(p4.msg, JOptionPane.INFORMATION_MESSAGE, JOptionPane.YES_OPTION);
JDialog dialog = optionPane.createDialog("Important1!");
dialog.setVisible(true);
其中 p4 是一个包含公共字符串的对象。
【问题讨论】:
-
你不是说模态的吧?对于
JDialog,另一个对setVisible(true)的调用通常可以正常工作,所以这在这里也有帮助。 -
我从来没有搞砸过“模态”,因为我是瑞士人,所以我真的无法理解它。你能解释一下吗? @tomse Google 到目前为止没有帮助我
-
如果我没听错的话,您的
JOptionPane已经打开了,您想把它放在前面吗?打开对话框 modal 意味着如果打开 modal 对话框,则所有其他对话框都将被阻止输入。见Dialog.setModal。 -
是的,joptionpane 那时已经打开了。但是,这不会把它放在所有其他窗户的前面,对吧? @tomse
-
你试过
setVisible(true)而不是调用toFront()吗?
标签: java joptionpane