Създавам приложение, в което тествам определен брой функции на интерфейса, и когато възникне грешка, бих искал да се покаже съобщение за грешка.
След това приложението трябва да направи екранна снимка на целия екран и накрая грешката съобщението се затваря без никаква помощ от потребителя.
За тази цел се опитах да използвам 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);
Чудех се дали има конкретен метод за затварянето му. Потърсих документацията и не мога да я намеря. Опитах се да намеря подходящ въпрос на SO, но не можах да намеря такъв, който да адресира моя проблем.
Чудя се дали има начин да се получи манипулаторът на прозореца и след това да се затвори с него или просто да се изпрати събитие "CLOSE" или "Press_ok" към прозореца?
Редактиране: Струва ми се, че кодът напълно спира да работи, когато се покаже полето за съобщения, сякаш има Thread.sleep(), докато прозорецът не бъде затворен ръчно от потребителя.
Ако е възможно, примерен код би бил полезен.
Благодаря