如何使JOptionPane对话框在最前端显示

如何使JOptionPane对话框在最前端显示,就是JOptionPane.showMessageDialog(null, "adbc");执行后弹出的窗口不被任何窗口覆盖?急用。
[b]问题补充:[/b]
回复 walsh (高级程序员) 2009-08-25:

我用的是JOPtionPane,它继承了 JComponent,实现了Accessible接口,好像没有办法再继承Window或者JFrame 了,所以setAlwaysOnTop(true);方法无法使用,我也曾想过自己做一个JFrame或者JDialog,虽然可以实现让窗口最前端显示可以没有JOptionPane那样好看的样子,所以还是希望能用JOptionPane

[b]问题补充:[/b]
回复 walsh (高级程序员) 2009-08-25:
天呐,好主意!!!! 我试了一下,采用了一个轻量级的JDialog,隐藏了所有的东西,然后把JOptionPane的弹出容器设置为这个JDialog,就达到我想要的效果了,谢谢!!!

楼主,建议你采用继承JFream或是JDialog,对话框本类就是一个事件,当用户点击一个东西的时候,那么就会触发这个事件,所以在相应的actionEvent中让它弹出对话框,那样永远都是在最前方的。

如果你不想这样,那应该是没有办法,因为只有这个方法:setAlwaysOnTop(true);// 设置窗体总在最前方 ,才能控制窗体在最前方。

楼主你可以看看有关对话框的例子:

[url]http://www.java2s.com/CN/Code/Java/Swing-JFC/OptionPaneSamplesimpledialog.htm[/url]

[size=medium] setAlwaysOnTop(true);// 设置窗体总在最前方

这个方法是java.awt.Window中的方法,只要你的对话框继承JFrame或是Window就可以直接调用了。[/size]

[quote]setAlwaysOnTop
public final void setAlwaysOnTop(boolean alwaysOnTop)
throws SecurityException更改始终位于顶层的窗口状态。始终位于顶层的窗口是位于所有其他窗口之上的窗口,除了其他也是始终位于顶层的窗口[/quote]

有管对话框的操作楼主可以查看

[url]http://www.java2s.com/CN/Code/Java/Swing-JFC/Errormessagedialog.htm[/url]