Подтверждение выхода из программы - Java
Формулировка задачи:
Всем доброго времени суток. Непонятки с подтверждением выхода из программы
Метод:
Вызов:
throw new UnsupportedOperationException("Not supported yet."); - данная строка генерируется самой IDE.
Если убрать эту строку "throw new UnsupportedOperationException("Not supported yet.");",то при подтверждении выхода из программы, при нажатии "НЕТ" - все равно осуществляется выход.
Если ее вернуть,то при нажатии "НЕТ" программа не закрывается, продолжает работу,,но вылазит куча ошибок:
Не совсем понял зачем эта строка "throw new UnsupportedOperationException("Not supported yet.");",и как сделать чтобы при нажатии отмены при выборе подтверждения закрытия программы происходила именно отмена,а не закрытие.
Листинг программы
- private void winClosing(WindowEvent e){
- Object[] options = { "Да", "Нет" };
- int status = JOptionPane
- .showOptionDialog(e.getWindow(), "Закрыть окно?", "Подтверждение выхода",
- JOptionPane.YES_NO_OPTION,
- JOptionPane.QUESTION_MESSAGE, null, options,options[0]);
- if (status == 0) {
- e.getWindow().setVisible(false);
- System.exit(0);
- }
- throw new UnsupportedOperationException("Not supported yet.");
- }
Листинг программы
- public void windowClosing(WindowEvent evt) {
- MainFrame w = new MainFrame();
- w.winClosing(evt);
Exception in thread "AWT-EventQueue-0" java.lang.UnsupportedOperationException: Not supported yet.
at packFrames.MainFrame.winClosing(MainFrame.java:136)
at packFrames.MainFrame.access$000(MainFrame.java:16)
at packFrames.MainFrame$1.windowClosing(MainFrame.java:86)
at java.awt.Window.processWindowEvent(Window.java:2058)
at javax.swing.JFrame.processWindowEvent(JFrame.java:305)
at java.awt.Window.processEvent(Window.java:2017)
at java.awt.Component.dispatchEventImpl(Component.java:4891)
at java.awt.Container.dispatchEventImpl(Container.java:2294)
at java.awt.Window.dispatchEventImpl(Window.java:2750)
at java.awt.Component.dispatchEvent(Component.java:4713)
at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:758)
at java.awt.EventQueue.access$500(EventQueue.java:97)
at java.awt.EventQueue$3.run(EventQueue.java:709)
at java.awt.EventQueue$3.run(EventQueue.java:703)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:76)
at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:86)
at java.awt.EventQueue$4.run(EventQueue.java:731)
at java.awt.EventQueue$4.run(EventQueue.java:729)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:76)
at java.awt.EventQueue.dispatchEvent(EventQueue.java:728)
at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:201)
at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:116)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:105)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:93)
at java.awt.EventDispatchThread.run(EventDispatchThread.java:82)
СБОРКА УСПЕШНО ЗАВЕРШЕНА (общее время: 5 секунды)
Решение задачи: «Подтверждение выхода из программы»
textual
Листинг программы
- frame.setDefaultCloseOperation(JFrame.DO_NOTHING_ON_CLOSE);
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д