К сожалению при создании окна приложения ни в одном из первых событий (OnCreate,
OnShow, OnActivate) нет
доступа к свойству Visible. Использование функции
ShowWindow с параметром SW_HIDE
в OnActivate-событии решает проблему (но при этом не избежать кратковременного
мерцания окна перед "исчезновением"):
procedure TForm1.OnActivate(Sender: TObject);
begin
ShowWindow(Handle, SW_HIDE);
end;
чтобы сделать окно опять
видимым необходимо вызвать ту же функцию, но уже с другим параметром:
ShowWindow(Handle, SW_SHOW);
Если Вам лень пользовать
API-функции или неприятно видеть мерцание, то есть другой, весьма интересный
способ сокрыть окно приложения от любопытствующих глаз:
procedure TForm1.OnCreate(Sender: TObject);
begin
Left := Screen.Width;
end;
Окно создается видимым, но
находится за пределами экрана!
|