java自动关闭Jdialog而无需用户操作
我正在创建一个应用程序,在其中测试一定数量的接口功能,当出现错误时,我希望显示一条错误消息
然后应用程序应该截取整个屏幕的屏幕截图,最后错误消息在没有用户帮助的情况下关闭
为此,我尝试使用JDialog,如下所示:
JOptionPane pane = new JOptionPane("Error message", JOptionPane.INFORMATION_MESSAGE);
JDialog dialog = pane.createDialog("Error");
dialog.addWindowListener(null);
dialog.setDefaultCloseOperation(JDialog.DISPOSE_ON_CLOSE);
dialog.setVisible(true);
Application.takeScreenshot();
dialog.setVisible(false);
我想知道是否有一个具体的方法来关闭它。我查了一下文件,似乎找不到。我试图找到一个相关的问题,但没有找到一个解决我的问题
我想知道是否有办法获取窗口句柄,然后使用该句柄将其关闭,或者简单地向窗口发送“close”或“Press_ok”事件
编辑:在我看来,当messagebox显示时,代码似乎完全停止运行,好像有一个线程。睡眠(),直到用户手动关闭窗口
如果可能的话,一个代码示例会很有帮助
谢谢
# 1 楼答案
我设法把它修好了。默认情况下,JDialog是模态的,这意味着它会中断其他所有操作,直到用户关闭它。为了解决这个问题,我使用了以下方法:
当此选项处于活动状态时,将显示一个简单的。setVisible(假);够了。 无论如何,谢谢你的帮助,很抱歉提出了一个不必要的问题,但我已经问了好几个小时,直到找到它。希望它能帮助别人