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

Вниз

Params.WndParent := GetDesktopWindow   Найти похожие ветки 

 
Inquirer   (2003-02-14 11:58) [0]

Чтобы кнопка формы (не главной) отображалась на 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-14 13:48) [1]

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


 
Inquirer   (2003-02-14 14:35) [2]

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


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

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


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

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

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


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

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



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

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

Наверх




Память: 0.47 MB
Время: 0.016 c
14-30567
Nick-From
2003-03-24 12:01
2003.04.10
Нужен пример работы с MMX


6-30502
Sour
2003-02-16 17:38
2003.04.10
Получить HTML текст страницы


3-30237
Timer
2003-03-20 22:04
2003.04.10
Хранение форматированного текста в БД


3-30235
LazorenkoX
2003-03-21 00:05
2003.04.10
date


14-30559
Kair
2003-03-23 21:51
2003.04.10
RC усилители. Что за штука такая?