Form1noを

解決


うめ  2006-06-13 15:55:14  No: 22173  IP: 192.*.*.*

いつもお世話になってます。
メインフォームのForm1の画面が表示される前に、Form2を表示させ、Form2のOKボタンでForm1画面を表示させ、Form2のキャンセルの場合には、プログラムを終了させるべく下記のようなコードを書きました。
OKボタンの場合には問題ないのですが、キャンセルの場合には一瞬Form1の画面が表示された後にプログラムが終了します。このようなコードの書き方では当り前のような気がしますが、Form2のキャンセルボタンの場合に全くForm1が全く表示させずに終了する方法を教えて欲しいのですが、よろしくお願いします。

procedure Form1.FormCreate(Sender: TObject);
begin
    Form2:= TForm2.Create(Self);
    if Form2.ShowModal=mrOK then begin
          //ある一定の作業をおこなう
    end
    else Application.Terminate;
end;

編集 削除
えーとね  2006-06-13 17:29:06  No: 22174  IP: 192.*.*.*

> メインフォームのForm1
Form1をメインフォームにしなければよいのでは。

編集 削除
アイマスク  2006-06-13 17:52:32  No: 22175  IP: 192.*.*.*

procedure Form1.FormCreate(Sender: TObject);
begin
    // ここに Hide, Minimaized, Widthゼロ/Heightゼロ等を
    // 入れてみたらどうでしょう?
    Form2:= TForm2.Create(Self);
    if Form2.ShowModal=mrOK then begin
          //ある一定の作業をおこなう
    end
    else Application.Terminate;
end;

編集 削除
かみづ  2006-06-13 19:27:39  No: 22176  IP: 192.*.*.*

Application.ShowMainForm := False;
でどうでしょう。

編集 削除
うめ  2006-06-14 10:27:47  No: 22177  IP: 192.*.*.*

皆様ありがとうございました。
かみづさんの回答でうまくいきました。
本当にありがとうございました。

編集 削除