在全屏模式下,JDialog不显示

Cla*_*ton 2 java swing fullscreen jdialog

我有一个以全屏模式运行的应用程序,并且工作正常.现在我需要添加一个简单的,未修饰的对话框,我遇到了麻烦.如果我运行应用程序最大化但不是全屏,则对话框将按预期显示和运行.当我切换回全屏时,对话框将不会显示.

该对话框扩展了JDialog,只包含一个JSlider和几个按钮.它是未修饰的而不是模态的.(我为测试目的禁用了模态 - 每次对话框阻止输入时强制退出应用程序都很痛苦.)我正在进入全屏模式setFullScreenWindow(),传入应用程序的主JFrame.如果我将非常JFrame设置为JDialog的所有者,则没有什么区别.如果我打电话toFront()给对话框,它似乎也没有帮助.

该对话框似乎是活动的 - 特别是因为它阻止输入,如果我使其模态 - 但只是没有显示或被隐藏.那么,在全屏模式下显示JDialog有什么明显的技巧吗? 我可能会忽视或省略的东西?

如果没有明显的解决方案,我可以稍后发布一些代码.不幸的是,我现在没有时间.

Ust*_*gat 5

JOptionPane.showInternalXXXDialog()方法将对话框呈现为JInternalFrames.也许您可以考虑使用JIternaFrame来模拟对话框.