Эта статья покажет вам, как закрыть окно в Java. Закрыть окно намного проще с помощью Swing.
JFrame
но это также можно сделать с помощью AWT
Рамка
Шаги
Метод 1 из 2: Использование javax.swing. JFrame
Шаг 1. Получите экземпляр
JFrame
или создайте новый.
Шаг 2. Установите операцию закрытия по умолчанию
Операция закрытия по умолчанию устанавливается с помощью метода установки внутри
JFrame
класс
setDefaultCloseOperation
который определяет, что происходит при нажатии кнопки закрытия, и принимает следующие параметры:
-
WindowConstants. EXIT_ON_CLOSE
-
WindowConstants. DISPOSE_ON_CLOSE
-
WindowConstants. HIDE_ON_CLOSE
HIDE_ON_CLOSE
а также
DISPOSE_ON_CLOSE
- заключается в том, что последний освобождает все ресурсы, используемые фреймом и его компонентами.
-
WindowConstants. DO_NOTHING_ON_CLOSE
WindowListener
к кадру и переопределение
windowClosing
метод. Пример пользовательской операции закрытия:
frame.setDefaultCloseOperation (WindowConstants. DO_NOTHING_ON_CLOSE); frame.addWindowListener (new WindowAdapter () {@Override public void windowClosing (WindowEvent e) {// Запрашивать подтверждение перед завершением программы. int option = JOptionPane.showConfirmDialog (frame, «Вы уверены, что хотите закрыть приложение?»), «Подтверждение закрытия», JOptionPane. YES_NO_OPTION, JOptionPane. QUESTION_MESSAGE); if (option == JOptionPane. YES_OPTION) {System.exit (0);}}});
Метод 2 из 2: Использование java.awt. Frame
Шаг 1. Получите экземпляр
Рамка
или создайте новый.
Шаг 2. Добавьте оконный слушатель
Вызов
addWindowListener
метод экземпляра. Обязательный аргумент:
WindowListener
. Вы можете реализовать каждый метод
WindowListener
интерфейс или переопределите только те методы, которые вам нужны
WindowAdapter
класс.
Шаг 3. Обработка события закрытия окна
Осуществлять
windowClosing
метод от
WindowListener
интерфейс или переопределить его из
WindowAdapter
класс. Окно можно закрыть двумя способами:
-
Удалите окно после нажатия кнопки закрытия:
-
Вызов
избавляться
метод внутри
windowClosing
- метод.
frame.addWindowListener (new WindowAdapter () {@Override public void windowClosing (WindowEvent e) {// Удаляем окно после нажатия кнопки закрытия. dispose ();}});
-
Завершите программу после нажатия кнопки закрытия:
-
Вызов
System.exit
метод внутри
windowClosing
- метод.
frame.addWindowListener (new WindowAdapter () {@Override public void windowClosing (WindowEvent e) {// Завершить программу после нажатия кнопки закрытия. System.exit (0);}});
подсказки
- Swing предпочтительнее AWT, поскольку последний действительно устарел.
-
С использованием
WindowAdapter
вам не нужно реализовывать каждый метод
WindowListener
- контракт говорит нам, но только те, которые нам нужны.