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

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

Определить, каким образом вызвана форма... [D5]


Tormoz ©   (2004-10-14 15:23:00) 

Уважаемые Мастера!

Существует ли способ определить,каким образом вызвана форма:

MyForm.Show or MyForm.ShowModal ?

Например,в обработчике кнопки на MyForm ?


Fay   (2004-10-14 15:53:00) [1]

Сорри 8) Плохо прочитал
FormStyleздесь не поможет, ИМХО.
8)


Tormoz   (2004-10-14 15:52:00) [2]

СПАСИБО !!!


Fay   (2004-10-14 15:52:00) [3]

2 begin...end ©   (14.10.04 15:44) [3]
function TCustomForm.ShowModal: Integer;
var
 WindowList: Pointer;
 SaveFocusCount: Integer;
 SaveCursor: TCursor;
 SaveCount: Integer;
 ActiveWindow: HWnd;
begin
 CancelDrag;
 if Visible or not Enabled or (fsModal in FFormState) or
   (FormStyle = fsMDIChild) then
   raise EInvalidOperation.Create(SCannotShowModal);
 if GetCapture <> 0 then SendMessage(GetCapture, WM_CANCELMODE, 0, 0);
 ReleaseCapture;
 Application.ModalStarted;
 try
  Include(FFormState, fsModal);


begin...end   (2004-10-14 15:44:00) [4]


> Tormoz   (14.10.04 15:23)

if fsModal in MyForm.FormState then
 // форма показана модально
else
 //форма показана немодально


> [2] Eugene1501   (14.10.04 15:40)

FormStyle здесь не поможет, ИМХО.


Eugene1501   (2004-10-14 15:40:00) [5]

Смотри свойство FormStyle


Алхимик   (2004-10-14 15:26:00) [6]

Перед показом в MyForm.Tag пиши 0 если Show и 1 если ShowModal,
а в обработчике кнопки смотри что в Tag и делай выводы.


Наверх

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