
Новые сообщения [новые:0]
Дайджест
Горячие темы
Избранное [новые:0]
Форумы
Пользователи
Статистика
Статистика нагрузки
Мод. лог
Поиск
|
|
20.04.2005, 16:18
|
|||
|---|---|---|---|
|
|||
Модальное окно для диалога |
|||
|
#18+
Можно ли высвечивать модальное окно, которое блокирует доступ только к родительскому? Т.е. предположим открыто 2 немодальных окна. В одном выскакивает какой-нибудь JOptionPane, но так, чтобы во втором окне можно было продолжать работать, а первое блокировалось пока не закроется JOptionPane. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
21.04.2005, 09:30
|
|||
|---|---|---|---|
|
|||
Модальное окно для диалога |
|||
|
#18+
Сразу говорю, что попробовать мне тут не на чем, но могу предложить такой вариант. JOptionPane - модальный, так что от него в придётся отказаться. Можно взять JDialog, для которого делать Owner'ом тот Frame, для которого он показывается. Повесить на JDialog WindowFocusListener, и в его методе windowLostFocus из сообщения выцеплять, какое окно пытается получить фокус. Если оно == owner, то перевести фокус обратно. Иначе ничего не делать. --С уважением, ponomarevvb-- ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
21.04.2005, 11:12
|
|||
|---|---|---|---|
|
|||
Модальное окно для диалога |
|||
|
#18+
[quote]Сразу говорю, что попробовать мне тут не на чем, но могу предложить такой вариант. JOptionPane - модальный, так что от него в придётся отказаться. Можно взять JDialog, для которого делать Owner'ом тот Frame, для которого он показывается. Повесить на JDialog WindowFocusListener, и в его методе windowLostFocus из сообщения выцеплять, какое окно пытается получить фокус. Если оно == owner, то перевести фокус обратно. Иначе ничего не делать. --С уважением, ponomarevvb--[/quote] Дело в том, что в этом случае JDialog займет весь родительский JFrame (или часть его) (кстати, это же самое можно сделать и с JOptionPane). А нужно сделать так, чтобы первоначальное окно свой внешний вид сохранило. Кроме того, нужно, чтобы это сообщение (диалог) можно было таскать по всему экрану, и можно было бы переключаться на все окна, кроме одного (того, которое это сообщение и породило). ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
21.04.2005, 13:12
|
|||
|---|---|---|---|
|
|||
Модальное окно для диалога |
|||
|
#18+
Ну, отнаследуйте тогда от JDialog и заведите в новом классе поле типа Frame - будет хранить тот фрейм, который показывает окно. А owner'а сделайте null, тогда можно куда угодно таскать окно. А остальное - как и предлагал… --С уважением, ponomarevvb-- ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
21.04.2005, 15:12
|
|||
|---|---|---|---|
|
|||
Модальное окно для диалога |
|||
|
#18+
А как быть, если с модального окна фокус перевести на не модальное (не родительское), а потом перекинуть фокус на родительское? Лажа ведь получится... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
21.04.2005, 15:59
|
|||
|---|---|---|---|
|
|||
Модальное окно для диалога |
|||
|
#18+
напиши свой фокусМанагер. Сделай так, что бы каждое твоё окно, перед тем как получить фокус с прашивало у манагера, можно ли это сделать. Если нельзя, то позволяло бы фокусМанагеру перевести фокус на нужное окно. и т.д. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|

start [/forum/topic.php?fid=59&mobile=1&tid=2152523]: |
0ms |
get settings: |
9ms |
get forum list: |
22ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
69ms |
get topic data: |
12ms |
get forum data: |
3ms |
get page messages: |
55ms |
get tp. blocked users: |
4ms |
| others: | 233ms |
| total: | 415ms |

| 0 / 0 |
