Form2を表示しているときにForm1を触れないようにするには?2

解決


ルイージ  2003-09-26 02:32:29  No: 4992  IP: [192.*.*.*]

Form1で処理を行っている間、アナウンスを表示する為だけに
Form2を表示して、メッセージやステータスを表示したいのです。

ですので、Form2を表示している間は、Form1にフォーカスが
こないようにしたいのです。

過去Logを見て、似たような件を見つけたのですが、
ShowModalでは、そこで処理が止まってしまい、
Form1で処理を続ける事ができません。

ご存知の方がいらっしゃいましたら、どうかご指導ください。

編集    削除
Halbow  2003-09-26 02:49:56  No: 4993  IP: [192.*.*.*]

Halbow です。

TForm には Enabled プロパティーがあるので

uses Unit2;

procedure TForm1.Button1Click(Sender: TObject);
begin
  Enabled := false;
  Form2.Show;
end;


として Form2 を Show し、

uses
  Unit1;

procedure TForm2.FormClose(Sender: TObject; var Action: TCloseAction);
begin
  Form1.Enabled := true;
end;

として、Form2 を閉じるとき true にしたらよいと思います。

編集    削除
ルイージ  2003-09-26 18:36:51  No: 4994  IP: [192.*.*.*]

Halbowさん、ありがとうございます。
Form.Enable:=Falseで解決しました!
ありがとうございます。

procedure TForm1.Button1Click(Sender: TObject);
begin
  Form1.Enabled := false;
  Form2.Show;

  //処理

  Form2.Hide;
  Form1.Enabled := true;

end;

編集    削除