Bezdepbonusu7Программирование: статьи и ответы

Вопрос

Когда вы закрываете графический интерфейс маленьким крестиком

Автор вопроса: DevilCodeОтветов: 2

Если вы закроете графический интерфейс с помощью маленького крестика в правом верхнем углу формы, убьет ли это все ваши потоки?

Если нет, то как вы поймаете это событие, чтобы я мог добавить код закрытия?

  • Он уничтожит потоки тогда и только тогда, когда вы выполните setDefaultCloseOperation(EXIT_ON_CLOSE) в основном JFrame. Luiggi Mendoza 17.07.2013
  • Что произошло, когда вы проверили это? camickr 17.07.2013
  • Несмотря на то, что Луиджи решил основную проблему, вы всегда можете добавить WindowListener, который активируется, когда закрывается Window. 17.07.2013
  • сделать другие потоки демоном 17.07.2013

javamultithreadingthread-safetythreadpoolswing

Ответы

Ответ 1 · рейтинг 4 · Danny.

setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

Чтобы выполнить некоторый код при закрытии, взгляните на это. событие закрытия окна в java

Ответ 2 · рейтинг 2 · Andrew Thompson

Да, если операция закрытия по умолчанию - EXIT_ON_CLOSE, как упоминал Луиджи. OTOH, лучше не просто произвольно "убивать" потоки.

Установите операцию закрытия по умолчанию DO_NOTHING_ON_CLOSE и добавьте WindowListener или WindowAdapter. В прослушивателе избавьтесь от графического интерфейса и завершите потоки.

Дополнительные сведения см. в разделе Как писать прослушиватели окон.

Перевод вопроса и ответов сообщества Stack Overflow, лицензия CC BY-SA. Оригинал на Stack Overflow.

Похожие материалы