Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

ShowModal по DDE [D4, Win95/98]


AndreyL ©   (2002-05-07 13:55:00) 

Почему при вызове по DDE функции, содержащей TForm.ShowModal все приложение становится активным (до этого оно активным не было) и как с этим бороться?

Господа! Задавал вопрос в Королевство, но там никто ничего вразумительного не ответил.
Проблема следующая: есть функция, которая вызывает модальную форму (функция работает долго, надо запретить пользовать интерфейс программы, в том числе и DDE-сервис). Эта функция может вызываться как "непосредственно" пользователем, так и по DDE (актуально, если нужно запустить ее несколько раз подряд). Но когда вызываем ее по DDE в цикле (макросом на VBA), потом переключаемся в любимого сапера и минут на десять пытаемся забыть о том, что где-то там что-то считается, то при каждом вызове этой функции все приложение (все открытые его формы с модальной формой во главе) всплывает поверх всего, закрывая собой любимого сапера. Самое интересное, что если организовать такой цикл не по DDE, а в самой программе, то модальная форма остается модальной в пределах приложения, но когда это приложение не активно, процедура TForm.ShowModal не выводит его(приложение) на первый план, и это правильно! А хотелось бы именно внешнее управление (типа макроса на VBA с командами DDE), а пока считает, можно было бы заняться чем нибудь другим.
В Королевстве предложили application.bringtofront - это прямо противоположно тому, что надо.
Заранее благодарен за ответ.


AndreyL   (2002-05-07 19:08:00) [1]

Я так понимаю, что в мире мне одному пришло в голову организовать DDE-сервер на Delphi. Может быть в Delphi просто TDdeServerConv какой-нибудь корявый? А я, глупый, мучаюсь?!


Наверх

Титульная страница Поиск, карта сайта Написать письмо