![]() |
|
Модераторы: LSD, AntonSaburov |
![]()
|
|
| skif18 |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 358 Регистрация: 17.5.2007 Где: Молдова, Кишинев Репутация: 1 Всего: 1 |
Как заблокировать кнопку закрытия JFrame? Есть кнопка на форме выполняющая ещё дополнительные действия. Но нужно закрыть "крестик" в заголовке фрейма. Чтоб не путать юзеров.
-------------------- |
|||
|
||||
| jk1 |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 1168 Регистрация: 17.10.2008 Где: Санкт-Петербург Репутация: 21 Всего: 75 |
-------------------- Opinions are like assholes — everybody has one |
|||
|
||||
| Skipy |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 487 Регистрация: 24.8.2006 Где: Москва, Россия Репутация: 4 Всего: 16 |
Вот именно это их и запутает. Если я вижу "крестик" - я ожидаю определенного поведения. Конкретно - что окно закроется, если я на него кликну. Так что либо убираете "крестик" вообще (а это Вы запаритесь, надо будет переключаться в не-native UI и пытаться добраться до этой кнопки, если это вообще кнопка!), либо приравниваете его к кнопке "Cancel", как это сделано во всех нормальных приложениях. UPD. Исследования показывают, что добраться до кнопки можно. Но нужно опираться на внутреннюю структуру JRootPane, которая нигде не светится и, следовательно, может меняться, а также на определенный LookAndFeel. Это сообщение отредактировал(а) Skipy - 12.10.2010, 18:14 |
|||
|
||||
| Connie |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 382 Регистрация: 12.8.2008 Репутация: 8 Всего: 9 |
А есть еще Alt+F4 ))) кроме кнопки
На крайний случай, если сильно надо, можно сделать свою декорацию окна http://download.oracle.com/javase/tutorial...ents/frame.html Это сообщение отредактировал(а) Connie - 12.10.2010, 19:59 |
|||
|
||||
| aleksandy |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 260 Регистрация: 17.12.2006 Репутация: 1 Всего: 5 |
skif18,
по-моему, тебе просто необходимо повесить на закрытие окна слушателя, в котором вызывать дополнительные действия. Эти действия вынести в отдельный метод и дергать его не только из слушателя закрытия окошка, но и в обработчике кнопки. |
|||
|
||||
| skif18 |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 358 Регистрация: 17.5.2007 Где: Молдова, Кишинев Репутация: 1 Всего: 1 |
aleksandy, так собственно и сделал...
Но вот в чем проблема. У меня срабатывает нормально. А у некоторых юзеров нет. Вот и ищу альтернативы. -------------------- |
|||
|
||||
| Skipy |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 487 Регистрация: 24.8.2006 Где: Москва, Россия Репутация: 4 Всего: 16 |
А что значит "не отрабатывает нормально"? Как отрабатывает? Что происходит?
|
|||
|
||||
| skif18 |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 358 Регистрация: 17.5.2007 Где: Молдова, Кишинев Репутация: 1 Всего: 1 |
Skipy, write не всегда срабатывает, а косяк пока найти не смог...
-------------------- |
|||
|
||||
| Skipy |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 487 Регистрация: 24.8.2006 Где: Москва, Россия Репутация: 4 Всего: 16 |
Он либо срабатывает, либо нет. Если нет - должно быть исключение, от которого можно отталкиваться. У Вас оно идет в консоль и с некоторой вероятностью просто его никто не видит.
|
|||
|
||||
![]()
|
| Правила форума "Java" | |
|
|
Если Вам помогли, и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, LSD, AntonSaburov, powerOn, jk1. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Java: GUI и Java FX приложения | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |