![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Как сделать независимую форму и невидимую в TaskBar [D5, D6, Win95/98, WinME, Win2k, WinXP]
Nick_Omsk © (2003-10-29 19:50:00)
Есть главная форма, в привате есть еще одна:
type TAProc = class (TForm)
private
UserForm : TUserForm;
...
1. Необходимо сделать так, чтоб при свёртывании главной формы другая (UserForm) не сворачивалась.
2. Чтоб при другая (UserForm) не светилась в TaskBar.
Решение п.1 нашёл в следующем:
procedure TAProc.FormCreate...
begin
...
UserForm:=TUserForm.CreateParented(GetDeskTopWindow);
...
end
вроде работает, но доверия не внушает
Подскажите, как мне быть?
Игорь Шевченко (2003-10-30 10:32:00) [1]
type
Tform1 = class(TForm)
...
protected
procedure CreateParams(var Params : TCreateParams); override;
end;
....
procedure Tform1.CreateParams (var Params : TCreateParams);
begin
inherited;
with Params do begin
Style := Style or WS_POPUP;
ExStyle := ExStyle or WS_EX_TOOLWINDOW;
end;
end;
Nick_Omsk (2003-10-29 21:56:00) [2]
Дело в том что форма имеет изначально BorderStyle:=bsNone на этапе проектирования
Nick_Omsk (2003-10-29 21:54:00) [3]
На каком этапе жизни формы?
Игорь Шевченко (2003-10-29 20:35:00) [4]
Да вроде все верно. Для того, чтоб форма не попадала в Taskbar, нужно в ее методе CreateParams установить Style WS_POPUP и Exstyle WS_EX_TOOLWINDOW