如何在主窗体之前显示设置配置的表单?

Use*_*ser 2 delphi delphi-xe

在我的项目中我有两个表单(form1,form2),form1是配置表单.

我想显示Form1,当我们单击Button1然后显示Form2和免费(Release)Form1.我怎么能这样做?

我用这个代码.但是这个项目会自动启动然后自动退出.朋友说,因为应用程序消息循环永远不会启动,应用程序终止,因为主窗体不存在.我怎么能解决这个问题?

uses Unit2;

{$R *.dfm}

procedure TForm1.Button1Click(Sender: TObject);
begin
  Application.CreateForm(TForm2, Form2);
  Release;
end;
Run Code Online (Sandbox Code Playgroud)

///

program Project1;
uses
  Forms,
  Unit1 in 'Unit1.pas' {Form1},
  Unit2 in 'Unit2.pas' {Form2};
{$R *.res}
begin
  Application.Initialize;
  Application.MainFormOnTaskbar := True;
  Form1:= TForm1.Create(Application);
  Application.Run;
end.
Run Code Online (Sandbox Code Playgroud)

Rob*_*edy 7

完全按照您在问题标题中提出的要求:创建并显示配置表单,然后创建并显示主表单.诀窍在于如何创建它们.Application.CreateForm用于您希望成为主要表单的表单.对所有其他表单使用普通对象创建技术.

像这样修改你的DPR文件:

var
  ConfigForm: TConfigForm;
begin
  Application.Initialize;

  ConfigForm := TConfigForm.Create(nil);
  try
    if ConfigForm.ShowModal <> mrOK then
      exit;
  finally
    ConfigForm.Free;
  end;

  Application.CreateForm(TMainForm, MainForm);
  Application.Run;
end.
Run Code Online (Sandbox Code Playgroud)