Как да затворите прозорец в Java (със снимки)

Съдържание:

Как да затворите прозорец в Java (със снимки)
Как да затворите прозорец в Java (със снимки)

Видео: Как да затворите прозорец в Java (със снимки)

Видео: Как да затворите прозорец в Java (със снимки)
Видео: 5 Яки Трика за iPhone, които НЕ ЗНАЕТЕ! 2024, Може
Anonim

Тази статия ще ви покаже как да затворите прозорец в Java. Затварянето на прозорец е много по -лесно с помощта на Swing's

JFrame

но е възможно и с помощта на AWT

Кадър

Стъпки

Метод 1 от 2: Използване на javax.swing. JFrame

Затворете прозореца java step1
Затворете прозореца java step1

Стъпка 1. Вземете екземпляр от a

JFrame

или създайте нов.

Затворете прозореца java step2_with_import
Затворете прозореца java step2_with_import

Стъпка 2. Задайте операция за затваряне по подразбиране

Операцията за затваряне по подразбиране се задава с помощта на метода на настройката вътре в

JFrame

клас

setDefaultCloseOperation

който определя какво се случва при натискане на бутона за затваряне и приема следните параметри:

  • WindowConstants. EXIT_ON_CLOSE

    - Затваря рамката и прекратява изпълнението на програмата.
  • WindowConstants. DISPOSE_ON_CLOSE

    - Затваря рамката и не прекратява непременно изпълнението на програмата.
  • WindowConstants. HIDE_ON_CLOSE

    - Прави рамката да изглежда като затворена, като задава свойството си за видимост на false. Разликата между

    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); ако (опция == JOptionPane. YES_OPTION) {System.exit (0);}}});

Метод 2 от 2: Използване на java.awt. Frame

Затворете прозореца java step1 method2
Затворете прозореца java step1 method2

Стъпка 1. Вземете екземпляр от a

Кадър

или създайте нов.

Затворете прозореца java step2 method2
Затворете прозореца java step2 method2

Стъпка 2. Добавете слушател на прозорец

Повикване

addWindowListener

метод на екземпляра. Изискваният аргумент е

WindowListener

. Можете или да приложите всеки метод на

WindowListener

интерфейс или да замените само необходимите ви методи

WindowAdapter

клас.

Затворете прозореца java step3 method2
Затворете прозореца java step3 method2

Стъпка 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

  • Договорът ни казва, но само тези, от които се нуждаем.

Препоръчано: