OnCreateイベントについて


Aroha  2016-02-25 21:01:14  No: 48001

こんにちは。
Delphi 2010 + Windows 7 32bitで開発しています。

複数のフォームがあるWindowsアプリケーションです。
スタートフォーム以外のフォームにあるOnCreateイベントが
アプリケーションを起動すると実行されてしまいます。
OnCreateイベントがあるフォームを開いたときに実行したいのですが
どうすればよういのでしょうか?


take  2016-02-25 21:53:38  No: 48002

プロジェクトのオプションで
自動生成の対象からそのフォームを外せばOnCreateイベントは発生しないと思います。

その代わり自分で生成しないといけません。


Aroha  2016-02-25 23:08:35  No: 48003

take様、早速のお返事をいただきましてありがとうございます。

確かにおっしゃる通り、自動生成対象フォームから外すことができました。
しかし、コード入力でどのように生成すればよいのでしょうか。

初歩的なご質問ばかりでは大変お恥ずかしいのですが
ご指導お願いいたします。


take  2016-02-26 00:26:24  No: 48004

フォームの生成処理を行いたい側で
uses に生成したいフォームを追記します

TForm1 から TForm2を生成して処理したい場合は
クリックイベントで生成するサンプル
※手書きなのでスペルミスあるかも

procedure TForm1.OnButton1Click(Sender: TObject);
var
  df : TForm2;
begin
  df := TForm2.Create(Self);
  try
    df.Show();         // 通常
    df.ShowModal();    // 閉じるまで処理を戻したくない場合
  finally
    df.Free;
  end


※返信する前に利用規約をご確認ください。

※Google reCAPTCHA認証からCloudflare Turnstile認証へ変更しました。






  このエントリーをはてなブックマークに追加