Topic: Узнать состояние окна формы (открыто - закрыто)

Есть необходимость прогнать процесс через несколько форм.

Form1.Show;
Form2.Show;
Form3.Show
etc
Выходные результаты каждой формы являются входными для следующей.
Как затормозить работу программы до закрытия выполняемой формы?

Можно, конечно, while boolean =0 do delay=500 со взводом флага по закрытию формы (событие OnExit), но опять эти прыжки по коду....
Может есть какой-то параметр типа WindowState = Close?

Re: Узнать состояние окна формы (открыто - закрыто)

netros wrote:

Есть необходимость прогнать процесс через несколько форм.

Form1.Show;
Form2.Show;
Form3.Show
etc
Выходные результаты каждой формы являются входными для следующей.
Как затормозить работу программы до закрытия выполняемой формы?

Можно, конечно, while boolean =0 do delay=500 со взводом флага по закрытию формы (событие OnExit), но опять эти прыжки по коду....
Может есть какой-то параметр типа WindowState = Close?

var
T:TTimer;

procedure Form1_Button2_OnClick (Sender: TObject; var Cancel: boolean);
begin
  Form2.Show;
end;

procedure Form1_Button1_OnClick (Sender: TObject; var Cancel: boolean);
begin
  if ( Form2.Visible = False ) then Form1.Close else T.Enabled:=True;
end;

begin
  T:=TTimer.Create(Application);
  T.Interval:=10;
  T.OnTimer:=@Form1_Button1_OnClick;
  T.Enabled:=False;
end.
Post's attachments

Attachment icon test.rar 2.5 kb, 42 downloads since 2024-01-22 

Re: Узнать состояние окна формы (открыто - закрыто)

pavlenko.vladimir.v, спасибо!
Хотя, конечно, помучался пока понял как это заставить работать.

Re: Узнать состояние окна формы (открыто - закрыто)

Какая-то сложная концепция.... И что такое "выходные результаты работы формы"?


Зачем изобретать велосипед с таймером? Сделайте многостраничный форму-мастер или используйте модальные вызовы окон.

Визуальное программирование: блог и телеграм-канал.