嗨我想表现出来 JOptionPane.showMessageDialog(null, "Appication already running");
10秒然后删除它.我可以用dothat吗?
您可以手动创建JOptionPane,而无需静态方法:
JOptionPane pane = new JOptionPane("Your message", JOptionPane.INFORMATION_MESSAGE);
JDialog dialog = pane.createDialog(parent, "Title");
Run Code Online (Sandbox Code Playgroud)
然后你可以显示对话框并启动一个计时器,在十秒钟后隐藏它.
小智 7
我尝试了这些答案并遇到了显示对话框是阻塞调用的问题,因此计时器无法正常工作.以下解决了这个问题.
JOptionPane opt = new JOptionPane("Application already running", JOptionPane.WARNING_MESSAGE, JOptionPane.DEFAULT_OPTION, null, new Object[]{}); // no buttons
final JDialog dlg = opt.createDialog("Error");
new Thread(new Runnable()
{
public void run()
{
try
{
Thread.sleep(10000);
dlg.dispose();
}
catch ( Throwable th )
{
tracea("setValidComboIndex(): error :\n"
+ cThrowable.getStackTrace(th));
}
}
}).start();
dlg.setVisible(true);
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
18364 次 |
| 最近记录: |