我有一个应用程序运行在全屏模式,并一直工作良好。现在我需要添加一个简单的,未修饰的对话框,我遇到了麻烦。如果我运行应用程序最大化了,但没有在全屏上运行,对话框将显示并按预期运行。当我切换回全屏时,对话框将不会显示。
该对话框扩展了JDialog,并且只包含一个JSlider和几个按钮。它是未装饰和非模态。(为了测试目的,我禁用了模式--每次对话框阻塞输入时,强制退出应用程序都是一种痛苦。)我使用setFullScreenWindow()进入全屏模式,传入应用程序的主JFrame。如果我将这个非常JFrame设置为JDialog的所有者,那就没有什么区别了。如果我在对话框上调用toFront(),似乎也没有帮助。
这个对话框看起来很活跃--特别是因为如果我把它变成模式的话,它会阻塞输入--只是没有显示或隐藏而已。那么,在全屏模式下显示JDialog有什么明显的窍门吗?可能忽略或忽略了什么吗?
如果没有明显的解决方案,我可以稍后发布一些代码。不幸的是,我现在没有时间。
发布于 2010-09-21 20:12:59
JOptionPane.showInternalXXXDialog()方法将对话框呈现为JInternalFrames。也许您可以考虑使用JIternaFrame来模拟对话框。
https://stackoverflow.com/questions/1722922
复制相似问题