Новый JFrame с новой темой
Я создал JFrame с полями со списком и кнопкой, которая создаст новый поток и продолжит выполнять действие. Я хочу, чтобы новый JFrame запускался с каждого нового потока для вывода журналов в новый JFrame. Но даже если я добавлю код, связанный с JFrame, в новый поток и закрою этот JFrame, он завершит всю программу вместо этого запущенного потока. Каков наилучший подход к тому, чтобы сделать то, что я хочу, возможным? Я просто хочу, чтобы новый JFrame открывался с каждым новым потоком, и когда я закрывал этот JFrame, он заканчивал этот поток.
С уважением!
2 ответа
По умолчанию закрытие JFrame
будет просто скрывать это (см. документацию дляsetDefaultCloseOperation()
). Если закрытие окна выходит из вашего приложения, это должно быть связано с вашим собственным кодом. Вы не случайно звоните setDefaultCloseOperation(JFrame. EXIT_ON_CLOSE)
, ты?
Вот несколько идей:
Не блокируйте поток отправки события; использование
SwingWorker
вместо этого, как показано здесь.Не используйте несколько кадров; используйте панели в контейнере, имеющем подходящую планировку.