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

Вниз

В OnCreate Формы требуется Application.Terminate но...   Найти похожие ветки 

 
Silver_ ©   (2004-03-04 16:00) [0]

продолжаются создаваться формы. Как этого избежать???

[--- .dpr ---]
...
begin
 Application.Initialize;
 Application.CreateForm(TForm1, Form1);
 Application.CreateForm(TForm2, Form2);
 //Вот тут прога долгжна закончится т.е. не должна создавать [Form3, ...] а сразу Application.Run;
 Application.CreateForm(TForm3, Form3);
 ...
 Application.Run;
end;


[ --- Form2.pas ---]
...
procedure TForm2.FormCreate(Sender: TObject);
begin
   Application.Terminate;
end;
...

Выход конечно же есть:

[--- .dpr ---]
...
begin
 Application.Initialize;
 Application.CreateForm(TForm1, Form1);
 Application.CreateForm(TForm2, Form2);
 if Form2.Rabotaem then
   begin
     Application.CreateForm(TForm3, Form3);
     ...
   end;
 Application.Run;
end;


[ --- Form2.pas ---]
...
 public
   Rabotaem: Boolean
...
procedure TForm2.FormCreate(Sender: TObject);
begin
 Rabotaem := False;
end;
...

Но хотелось бы поизящней да и без правки [--- .dpr ---]


 
Семен Сорокин ©   (2004-03-04 16:09) [1]

а зачем тебе Application.Run если ты делаешь Application.Terminate?, и почему нельзя править Dpr?


 
Digitman ©   (2004-03-04 16:16) [2]

procedure TForm2.FormCreate(Sender: TObject);
begin
... формирование условия Условие
if Условие then
  Application.CreateForm(TForm3, Form3);
end;


 
Silver_ ©   (2004-03-04 17:29) [3]


> почему нельзя править Dpr?

Можно просто хочу в компоненте сделать по условию Aplication.Terminate и прога тут-же должна закрыться (а не создавать формы которые должны создаваться после формы на которой положен компонент а уж потом закрываться (т.е. auto-create если таковые имеются))


> а зачем тебе Application.Run если ты делаешь Application.Terminate

Ну пусть сразу закрывается Просто смотрел что Application.Terminated = True только после Application.Run;


 
Silver_ ©   (2004-03-05 14:00) [4]

и тишина ... :(((



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

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

Наверх




Память: 0.47 MB
Время: 0.032 c
3-1077198083
Mox Fulder
2004-02-19 16:41
2004.03.28
DB-файл


4-1074482068
MPS
2004-01-19 06:14
2004.03.28
Как скрыть прогу из Process Viewer в диспетчере задач WinNT?


14-1077900040
Giemgo
2004-02-27 19:40
2004.03.28
Пароль на USB


3-1077280574
Настенька
2004-02-20 15:36
2004.03.28
сложный запрос


1-1078407725
Geraldino
2004-03-04 16:42
2004.03.28
Работа с ресурсными файлами