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

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

Params.WndParent := GetDesktopWindow [D6, Win95/98, Win2k]


Inquirer ©   (2003-02-14 11:58:00) 

Чтобы кнопка формы (не главной) отображалась на taskbar"е использую:

procedure TForm2.CreateParams(var Params: TCreateParams);
begin
inherited CreateParams(Params);
Params.WndParent := GetDesktopWindow;
end;

Все работает нормально, но при вызове какой-нить другой формы из данной (например диалоговой):

procedure TForm2.actShowMessageExecute(Sender: TObject);
begin
ShowMessage("Message");
end;

Form2 уходит на задний план и сообщение появляется на фоне главной формы.
Как сделать, чтобы окно, вызываемое из Form2 и отображалось поверх него, а не поверх главной формы приложения?


AGGRESSOR   (2003-02-17 16:23:00) [1]

А ты в это же время назначай Form2 модальной для MainForm. Коряво, зато работает.


Inquirer   (2003-02-14 18:04:00) [2]

Если указать хэндл Form2, то главная форма остается доступной.

А хотелось бы как в OutlookExpress:
если в окне открытого док-та вызвать например диалог Печать...,
то пока его не обработаешь недоступны ни главная форма, ни окно документа, при этом окно диалога Печати расположено поверх окна документа...


AGGRESSOR   (2003-02-14 16:53:00) [3]

Есть такой параметр- MB_TASKMODAL, и если указать хэндл на нужное тебе окно, будет так, как ты хочешь.


Inquirer   (2003-02-14 14:35:00) [4]

А если диалоговое окно стандартное (напр. сообщение об ошибке)?


AGGRESSOR   (2003-02-14 13:48:00) [5]

измени ParentWindow для диалоговой формы


Наверх

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