java – 关闭一个可运行的JOptionPane
发布时间:2020-12-15 04:19:20 所属栏目:Java 来源:网络整理
导读:我有这个Runnable窗口: EventQueue.invokeLater(new Runnable(){ @Override public void run() { op = new JOptionPane("Breaktime",JOptionPane.WARNING_MESSAGE); dialog = op.createDialog("Break"); dialog.setAlwaysOnTop(true); dialog.setModal(true
我有这个Runnable窗口:
EventQueue.invokeLater(new Runnable(){ @Override public void run() { op = new JOptionPane("Breaktime",JOptionPane.WARNING_MESSAGE); dialog = op.createDialog("Break"); dialog.setAlwaysOnTop(true); dialog.setModal(true); dialog.setDefaultCloSEOperation(JDialog.DISPOSE_ON_CLOSE); dialog.setVisible(true); } }); 我有可能在这里有一个计时器在1或2分钟内关闭它而不是单击确定按钮吗? 解决方法
是的,诀窍是在调用setVisible之前启动Timer …
public class AutoClose02 { public static void main(String[] args) { new AutoClose02(); } private Timer timer; private JLabel label; private JFrame frame; public AutoClose02() { EventQueue.invokeLater(new Runnable() { @Override public void run() { try { UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName()); } catch (ClassNotFoundException | InstantiationException | IllegalAccessException | UnsupportedLookAndFeelException ex) { } JOptionPane op = new JOptionPane("Breaktime",JOptionPane.WARNING_MESSAGE); final JDialog dialog = op.createDialog("Break"); dialog.setAlwaysOnTop(true); dialog.setModal(true); dialog.setDefaultCloSEOperation(JDialog.DISPOSE_ON_CLOSE); // Wait for 1 minute... timer = new Timer(60 * 1000,new ActionListener() { @Override public void actionPerformed(ActionEvent e) { dialog.dispose(); } }); timer.setRepeats(false); // You could use a WindowListener to start this timer.start(); dialog.setVisible(true); } } ); } } (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- java遍历HashMap简单的方法
- JPA Hibernate调用Postgres函数void返回MappingException:
- 如何在java中返回两个参数
- java – 尝试使用tomcat-maven-plugin部署maven项目时出现错
- java – 使用gson反序列化时将默认值设置为变量
- 运行JUnit插件测试时的java.lang.NoClassDefFoundError
- java – Libgdx在运行时更改Texture的颜色
- java – 保持远程对象的更新
- java – Maven exec插件ClassNotFoundException
- Spring queryForObject方法:查询的结果以对象类型返回