这就是场景。
我有代码,可以在遇到错误时启动警报。
AudioAlarm t = new AudioAlarm(song);
try {
Thread.sleep(2000);
} catch (InterruptedException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
System.out.println("Awake");
t.start();
setRunnung(true);
JOptionPane.showMessageDialog(null, "Alarm ...", "Alarm", JOptionPane.OK_OPTION);
AudioAlarm.setLoop(false);
System.out.println("Alarm Acknowledged ...");
我想以这种方式重新设计这个逻辑,
如果用户在一段时间内(例如 2 分钟)未确认警报,警报将关闭并且消息对话框应消失。
我怎样才能获得这个?
我能够停止警报,但无法在用户不按“确定”的情况下处理对话框
最佳答案
要做你想做的事,你应该:
- 使用其构造函数之一创建一个
JOptionPane
实例 - 在此选项 Pane 上调用
createDialog
以获取包含此选项 Pane 的对话框 - 使用
javax.swing.Timer
实例在 2 分钟后触发操作事件 - 向此计时器添加一个操作监听器,这将关闭包含选项 Pane 的对话框
- 显示包含选项 Pane 的对话框。
关于java - JOptionPane.showMessageDialog 查询?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6623109/