У меня возник вопрос о связи между прослушивателем качающегося окна и операцией закрытия по умолчанию. Возникает вопрос, когда я имею дело с ниже сценарием:Окно Закрыть слушатель и setDefaultCloseOperation
добавить окно слушателя (WindowAdapter
используется для слушателя) для JFrame
и переопределить функцию windowClosing
: если пользователь закрывает окно, появится диалоговое окно для подтверждения, если пользователь выберет опцию CANCEL
, а затем сразу верните. Однако, когда я проверяю код и выбираю CANCEL
при закрытии окна, окно кадра все равно закрывается (или может быть просто невидимым, потому что значок Java все еще находится на панели задач).
Затем я добавляю параметр закрытия по умолчанию с DO_NOTHING_ON_CLOSE
, с тем же тестовым поведением окно кадра не закрывается, что я и ожидал.
setDefaultCloseOperation(DO_NOTHING_ON_CLOSE);
Тогда я меняю близкий вариант по умолчанию с EXIT_ON_CLOSE
, с таким же поведением теста, окно кадра непосредственно закрыто (на этот раз значок Java тоже исчез).
Это меня смущает. Означает ли это, что слушатель окна может просто определить, что делать, когда окно закрывается, но не может определить, закрыть ли окно? Или мне нужно переопределить другую функцию?
что я ожидал.setDefaultCloseOperation (DO_NOTHING_ON_CLOSE); ---> myFrame.setVisible (false) – mKorbel