![]() |
|
Модераторы: Poseidon, Snowy, bems, MetalFan |
![]()
|
|
| wik |
|
|||
|
Unregistered |
Кто-нибудь знает, как можно создать модальное окно, но не для всего приложения, а для конкретных окон, например для текущего.
Если можно, примерчик.... |
|||
|
||||
| Cashey |
|
|||
![]() Бессмертный ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 3441 Регистрация: 13.11.2002 Где: в столице Репутация: 2 Всего: 60 |
просто открыть его методом ShowModal
Пример:
-------------------- библия учит любить ближнего, а камасутра обучает как именно |
|||
|
||||
| wik |
|
|||
|
Unregistered |
Нет, ты не понял. Мне не надо делать его вообще модальным. У меня тогда не будет доступа ни к меню, ни к другим окнам. Мне именно надо заблокировать вызвавшее окно (Sender)
|
|||
|
||||
| Kesh |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Эксперт Сообщений: 2488 Регистрация: 31.7.2002 Где: Германия, Saarbrü cken Репутация: 4 Всего: 54 |
А что если у вызвавшего окна сделать Enabled := false;
-------------------- ![]() |
|||
|
||||
| x77 |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 1255 Регистрация: 25.3.2002 Репутация: 19 Всего: 22 |
kesh, у тебя просто перестанут работать все контролы. но фокус окно будет получать по прежнему.
wik, просто в блокируемом окне вешаешь обработчик на активацию и в нём проверяешь: если "модальное" окно в данный момент открыто, то фокус переводим на него. а открываться окно будет обычным Show.
-------------------- Я никогда не сопротивлялся искушению, поскольку узнал: что мне не нравится, то меня не искушает. © Джордж Бернард Шоу (Ирландия) |
|||
|
||||
| Unregistered |
|
|||
|
Unregistered |
ok, спасибо. Только вот теперь вопрос, как получить из этого немодального окна какие-то параметры и вообще отследить, что оно закрылось
|
|||
|
||||
| x77 |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 1255 Регистрация: 25.3.2002 Репутация: 19 Всего: 22 |
что ты называешь немодальным окном? то, которое открывается или то, из которого открывается?
в любом случае, просто добавь их в uses друг к другу. и читай любые свойства формы, например, Form2.Edit1.Text и пр. -------------------- Я никогда не сопротивлялся искушению, поскольку узнал: что мне не нравится, то меня не искушает. © Джордж Бернард Шоу (Ирландия) |
|||
|
||||
| youri |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 740 Регистрация: 17.4.2004 Репутация: нет Всего: 16 |
Люди, у меня тут есть проблема. Хочу создать модальное окно, которое отбражает некоторый процесс (в окне progress bar и кнопка cancel). Выполнение требуемых операций я поставил на событие OnShow модального окна. По завершении процесса модальное окно должно само закрыться. Ставлю в конце обработчика OnShow Close или ModalResult:=mrOk. Но окно не закрывается. На обработчике OnClick кнопки Cancel стоит ModalResult:=mrCancel, и при нажатии на кнопку окно закрывается. Подскажите, в чем я не прав.
|
|||
|
||||
| z-END |
|
|||
![]() прафесар™ ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 3014 Регистрация: 13.3.2003 Где: Венья, Пиетари Репутация: 11 Всего: 102 |
поподробней код приведи, так ниче непонятно
-------------------- Каждый чилавек пасвоему праф...а памоему НЕТ! |
|||
|
||||
| Maverick |
|
|||
|
Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1307 Регистрация: 22.9.2003 Где: Odessa, Ukraine Репутация: 2 Всего: 10 |
По-моему, для этих целей лучше воспользоваться фрэймом... ИМХО... |
|||
|
||||
| x77 |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 1255 Регистрация: 25.3.2002 Репутация: 19 Всего: 22 |
Maverick, а фрейм где будет находиться?
не самый лучший вариант - в OnShow прописывать обработчик отображения прогрессбара и там же закрывать. это всё надо делать из основно проги:
-------------------- Я никогда не сопротивлялся искушению, поскольку узнал: что мне не нравится, то меня не искушает. © Джордж Бернард Шоу (Ирландия) |
|||
|
||||
| youri |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 740 Регистрация: 17.4.2004 Репутация: нет Всего: 16 |
Спасибо. Но почему
Мне, в принципе, была непонятна такая вещь: почему при выполнении команды ModalResult := mrOk в обработчике события OnShow модального окна оно не закрывается. |
|||
|
||||
| x77 |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 1255 Регистрация: 25.3.2002 Репутация: 19 Всего: 22 |
а ты взгляни, как работает метод ShowModal, тебе понравится
поэтому закрывать модальные окна изменением ModalResult в OnShow - абсолютно бесполезно. -------------------- Я никогда не сопротивлялся искушению, поскольку узнал: что мне не нравится, то меня не искушает. © Джордж Бернард Шоу (Ирландия) |
|||
|
||||
![]()
|
| Правила форума "Delphi: Общие вопросы" | |
|
|
Запрещается! 1. Публиковать ссылки на вскрытые компоненты 2. Обсуждать взлом компонентов и делиться вскрытыми компонентами
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Snowy, MetalFan, bems, Poseidon, Rrader. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Delphi: Общие вопросы | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |