Вниз
Скачать: 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 вся ветка

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.02 c
14-1077979354
Шишкин Илья
2004-02-28 17:42
2004.03.28
Проблема с железом


14-1077888387
neodiX
2004-02-27 16:26
2004.03.28
Internet lines overbooking


14-1077960542
Morfey
2004-02-28 12:29
2004.03.28
Как изменить анкету???


3-1077167527
esa
2004-02-19 08:12
2004.03.28
conversion error from string "blob"


1-1078393062
Бывающий
2004-03-04 12:37
2004.03.28
Как средствами ShellExecute распечатать документ?




   Наверх