Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.07.25;
Скачать: CL | DM;

Вниз

Как получить текущую модальную форму?   Найти похожие ветки 

 
Islander   (2004-07-11 11:21) [0]

Здравствуйте!

На экране открыто несколько форм моего приложения. Надо определить, какая из них модальная. В принципе, достаточно будет даже хендла этой формы.

Заранее спасибо


 
TUser ©   (2004-07-11 12:00) [1]

Раз она модальная - значит наверху. Тогда, наверное, GetForegroundWindow.


 
Islander   (2004-07-11 12:44) [2]

Мое приложение может быть неактивно, т.к. эта форма может быть закрыта другими окнами


 
Arm79   (2004-07-11 12:59) [3]

Если это ваше приложение, то можно при открытии форм перед ShowModal устанавливать св-во Tag показываемой формы в 1. А затем пробежаться по Screen.Forms, анализировать это св-во.


 
Anatoly Podgoretsky ©   (2004-07-11 13:06) [4]

Screen.ActiveForm


 
Islander   (2004-07-11 13:40) [5]

Спасибо, это почти то, что надо.

Но я открыл еще один способ:

Если известна некая форма Form и надо проверить, модальна ли она в текущий момент или нет, можно просто посмотреть результат функции IsWindowEnabled (Form.handle);

Дело в том, что в приведенном Анатолии примере есть одно но: если есть моя форма, и в это же время открыт OpenDialog, то Screen.ActiveForm вернет мне мою форму, хотя она в данный момент не модальна (модален OpenDialog).


 
Piter ©   (2004-07-11 14:58) [6]

Чего-то я не понимаю...

Вызов модальной формы прерывает выполнение основного кода, так? В каком же месте программы требуется определить модальна ли форма?!



Страницы: 1 вся ветка

Текущий архив: 2004.07.25;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.028 c
14-1089123073
VEG
2004-07-06 18:11
2004.07.25
Дайте, пожалуйста, совет насчет доменов и хостинга


14-1089017822
Сергей Г
2004-07-05 12:57
2004.07.25
Переведи


14-1089009723
DimKa
2004-07-05 10:42
2004.07.25
Проблема с компом


1-1089698381
DelphiNew
2004-07-13 09:59
2004.07.25
Ещё раз про TreeView


1-1089272142
Help
2004-07-08 11:35
2004.07.25
Перетаскивание окна