Как сохранить некоторые Объекты непосредственно после того, как Пользователь закрыл JFrame Приложения, но до выхода из Программы? - PullRequest
2 голосов
/ 18 марта 2012

Добрый день!

Я разрабатываю небольшое Java-приложение с IDE NetBeans, расширяющим JFrame.Я реализовал несколько способов закрыть приложение, например, нажав Ctrl-Q и нажав X на JFrame.

Но перед фактическим закрытием я бы хотел, чтобы программа выполнила для меня дополнительный код, чтобы сохранить некоторые объекты, которые необходимо использовать приложению при следующем запуске.

Что такоелучший способ изменить поведение закрытия всех программ?

Я подумываю о переопределении / замене defaultCloseOperation, что-то вроде этого:

    setDefaultCloseOperation( myOwnCloseOperation );

Спасибо за любую помощь!

1 Ответ

4 голосов
/ 18 марта 2012
  1. setDefaultCloseOperation( JFrame.DO_NOTHING_ON_CLOSE )
  2. Добавьте WindowListener или WindowAdapter - переопределяя методы windowClosing() или windowClosed() (я забыл, какие), чтобы перехватить событие закрытия.
  3. Вызовите функцию сохранения из метода окна.
  4. Вызов setVisible(false) или dispose() (как описано в комментариях) в конце.
...