|
|
|
Закрытие окон в Swing
|
|||
|---|---|---|---|
|
#18+
Есть JFrame, который должен при закрытии сохранять свои размеры. Я использую для отслеживания закрытия класс windowAdapter. Окно можно закрыть щелчком на кнопке (setVisible(false);) и обычным виндовым способом. Метод windowClosing срабатывает только если я закрываю окно последним способом, а на setVisible он не срабатывает. Метод windowClosed срабатывает лишь на dispose, а мне это неудобно. Как отследить именно исчезновение окна с экрана вне зависимости как оно закрылось? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.04.2010, 14:33:37 |
|
||
|
Закрытие окон в Swing
|
|||
|---|---|---|---|
|
#18+
windowDeactivated ещё есть. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.04.2010, 14:36:08 |
|
||
|
Закрытие окон в Swing
|
|||
|---|---|---|---|
|
#18+
BlazkowiczwindowDeactivated ещё есть. Неаккуратно выходит. Срабатывает, но срабатывает и когда я переключаюсь на другое окно. А это уже лишнее действие. Нет другого способа? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.04.2010, 14:44:16 |
|
||
|
Закрытие окон в Swing
|
|||
|---|---|---|---|
|
#18+
немного не понятно. setVisible(false) лишь скрывает окно, чтобы его можно было потом показать, не создавая заново. Не уверен что называется "обычным виндовым способом", то по закрытию окна оно вроде как и диспозится. Поэтому вопрос в том почему бы не вызывать метод dispose()? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.04.2010, 14:48:20 |
|
||
|
Закрытие окон в Swing
|
|||
|---|---|---|---|
|
#18+
Теперь понял, спасибо. В Дельфе закрытие окна - исчезновение его с экрана. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.04.2010, 14:49:52 |
|
||
|
Закрытие окон в Swing
|
|||
|---|---|---|---|
|
#18+
А еще маленький вопрос. Если я окну сделал dispose - то класс JFrame у меня уцелеет? Те поля, которые мною добавлены надо помнить после его исчезновения с экрана. Само окно мне больше ненужно, а эти поля надо обработать. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.04.2010, 14:55:54 |
|
||
|
Закрытие окон в Swing
|
|||
|---|---|---|---|
|
#18+
Класс точно уцелеет. Он в rt.jar зашит намертво. Ну а на счет экземпляра, то всё то же самое как и для других объектов. Пока есть ссылки, всё доступно. dispose() кроме всего прочего и освобождает нативные ресурсы. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.04.2010, 15:00:23 |
|
||
|
Закрытие окон в Swing
|
|||
|---|---|---|---|
|
#18+
Спасибо за помощь, все получилось как нужно. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.04.2010, 15:04:58 |
|
||
|
Закрытие окон в Swing
|
|||
|---|---|---|---|
|
#18+
Кстати, а при нажатии закрывающего крестика можно дернуть свою логику? Например закрыть диалог крестиком и чтобы сработал так же мой метод? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.08.2013, 23:17:52 |
|
||
|
Закрытие окон в Swing
|
|||
|---|---|---|---|
|
#18+
Код: java 1. 2. 3. 4. 5. 6. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.08.2013, 01:03:36 |
|
||
|
Закрытие окон в Swing
|
|||
|---|---|---|---|
|
#18+
сорри, немного не точно, а то запутаешься Код: java 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.08.2013, 01:07:59 |
|
||
|
Закрытие окон в Swing
|
|||
|---|---|---|---|
|
#18+
Паша01, за пример спасибо, удалось прицепить код к главному фрейму, а к диалогу не вышло... WindowListener windowListener = new InfoFrameListener(); addFeaturesDialog.addWindowListener(windowListener); Диалоги создаются в отдельном классе... Много в каких местах использовал эти строки, а листенер все не слушает диалог... Вправьте мне голову или руки))) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.08.2013, 23:22:48 |
|
||
|
|

start [/forum/topic.php?fid=59&msg=36590282&tid=2128847]: |
0ms |
get settings: |
11ms |
get forum list: |
16ms |
check forum access: |
6ms |
check topic access: |
6ms |
track hit: |
43ms |
get topic data: |
19ms |
get forum data: |
5ms |
get page messages: |
90ms |
get tp. blocked users: |
3ms |
| others: | 280ms |
| total: | 479ms |

| 0 / 0 |
