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

Вниз

Отображение элементов   Найти похожие ветки 

 
webpauk ©   (2010-01-25 16:55) [0]

скрываю главную форму и вывожу значок в трей
procedure TFormTasksMain.FormCreate(Sender: TObject);
begin
 Application.ShowMainForm:=False;
 CreateTrayIcon(Handle);
end;


удаляю значок из трея и восстанавливаю форму.
procedure TFormTasksMain.N2Click(Sender: TObject);
begin
 DeleteTrayIcon(Handle);

 Application.ShowMainForm:=True;
 ShowWindow(Application.Handle, SW_RESTORE);
 ShowWindow(Application.MainForm.Handle, SW_RESTORE);
end;


столкнулся с проблемой: после восстановления формы на ней не отображаются компоненты.


 
webpauk ©   (2010-01-25 17:00) [1]

причем такая фигня случается только если скрытие mainForm прописано в OnCreate.
Если в другой процедуре или событии - всё ок?!


 
Сергей М. ©   (2010-01-25 17:06) [2]

Нафига создавать видимую главную форму, чтобы не успев ее показать тут же делать ее невидимой ?


 
webpauk ©   (2010-01-25 17:09) [3]

собственно, хочу чтобы при инициализации - форма была видна только в виде значка в трее.


 
webpauk ©   (2010-01-25 17:13) [4]

и вообще - вопрос теоретический!
а именно: почему не отображаются компоненты, расположенный на MainForm, если таковая во время инициализации срывается?


 
Сергей М. ©   (2010-01-25 17:15) [5]

В dpr:

Application.ShowMainForm := false;
Application.CreateForm(TMyMainForm, MyMainForm);

А в конструкторе запуздыривай иконку


 
webpauk ©   (2010-01-25 17:16) [6]

procedure TForm1.FormCreate(Sender: TObject);
begin
Application.ShowMainForm:=False;
Timer1.Enabled:=False;
Timer2.Enabled:=True;
end;

procedure TForm1.Timer1Timer(Sender: TObject);
begin
 ShowWindow(Application.Handle, SW_HIDE);
 ShowWindow(Application.MainForm.Handle, SW_HIDE);
 TTimer(Sender).Enabled:=False;
 Timer2.Enabled:=True;
end;

procedure TForm1.Timer2Timer(Sender: TObject);
begin
 ShowWindow(Application.Handle, SW_RESTORE);
 ShowWindow(Application.MainForm.Handle, SW_RESTORE);
 TTimer(Sender).Enabled:=False;
 Timer1.Enabled:=True;
end;


то же, в упрощенном варианте


 
webpauk ©   (2010-01-25 17:18) [7]


> Сергей М. ©   (25.01.10 17:15) [5]
>

да хоть в dpr, хоть в OnCreate, хоть в Inizialization...
результат один - компоненты  не отображаются!


 
Сергей М. ©   (2010-01-25 20:12) [8]

ну если даже с учетом

> Если в другой процедуре или событии - всё ок

у тебя

> результат один

то разбегись как следует и..

Шопена только не забудь заказать.



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

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

Наверх




Память: 0.48 MB
Время: 0.012 c
11-1214083278
Jon
2008-06-22 01:21
2010.03.28
Happy Birthday KOL!


15-1263197619
Неважно
2010-01-11 11:13
2010.03.28
Delphi2010


2-1264626549
kalexi
2010-01-28 00:09
2010.03.28
Недопустимый дескриптор окна при закрытии приложения


15-1262726157
Jeer
2010-01-06 00:15
2010.03.28
Календарное светопреставление


15-1263146426
Petr V. Abramov
2010-01-10 21:00
2010.03.28
RBC празднует :)