掲示板システム
ホーム
アクセス解析
カテゴリ
ログアウト
MDIフォーム以外のフォームをメインフォームにするには (ID:39071)
名前
ホームページ(ブログ、Twitterなど)のURL (省略可)
本文
1.MidChildを作成するときにMainFormがMidFormじゃないと駄目 2.MainFormとはApplication.MainForm 3.MidChild作成直前にMainFormを子フォームに変更すればMidChildは表示できる 4.でも Application.MainForm は ReadOnly procedure TForm1.Button1Click(Sender: TObject); begin if Assigned(Form2) = False then begin Form2 := TForm2.Create(Self); end; Form2.Show; end; procedure TForm1.FormClose(Sender: TObject; var Action: TCloseAction); var Form: ^TForm; begin //Application.MainForm := Form1; Form := @Application.MainForm; Form^ := Form1; if Assigned(Form2) = True then begin Form2.Free; Form2 := nil; end; end; procedure TForm2.Button1Click(Sender: TObject); var Form: ^TForm; begin if Assigned(Form3) = False then begin //Application.MainForm := Form2 Form := @Application.MainForm; Form^ := Form2; Form3 := TForm3.Create(Self); end; end; procedure TForm2.FormClose(Sender: TObject; var Action: TCloseAction); var Form: ^TForm; begin //Application.MainForm := Form2 Form := @Application.MainForm; Form^ := Form2; if Assigned(Form3) = True then begin Form3.Free; Form3 := nil; end; //メインフォームが自分自身だとメインフォームの終了となってしまい //アプリケーションが終了してしまう //Application.MainForm := Form1 Form := @Application.MainForm; Form^ := Form1; end;
←解決時は質問者本人がここをチェックしてください。
更新する
戻る
掲示板システム
Copyright 2021 Takeshi Okamoto All Rights Reserved.