通过Application.CreateForm
创建的第一个形式是应用程序的主要形式,并且当它关闭在应用程序终止。
要使用不同的表单,您必须在项目(.dpr或.bpr)源代码中执行此操作。使用IDE主菜单中的Project->View Source
即可。
在delphi,它应该是这样的:
program Project1;
uses
Forms, SysUtils,
StartForm in 'StartForm.pas' {FormStart},
OtherForm in 'OtherForm.pas' {FormOther};
{$R *.res}
begin
Application.Initialize;
Application.MainFormOnTaskbar := True;
if FindCmdLineSwitch('useOther') then
Application.CreateForm(TFormOther, FormOther)
else
Application.CreateForm(TFormStart, FormStart);
Application.Run;
end.
在c++builder,它应该是这样的:
#include <vcl.h>
#pragma hdrstop
#include <SysUtils.hpp>
#include <tchar.h>
//---------------------------------------------------------------------------
USEFORM("StartForm.cpp", StartForm);
USEFORM("OtherForm.cpp", OtherForm);
//---------------------------------------------------------------------------
WINAPI _tWinMain(HINSTANCE, HINSTANCE, LPTSTR, int)
{
try
{
Application->Initialize();
Application->MainFormOnTaskBar = true;
if (FindCmdLineSwitch("useOther"))
Application->CreateForm(__classid(TFormOther), &FormOther);
else
Application->CreateForm(__classid(TFormStart), &FormStart);
Application->Run();
}
catch (Exception &exception)
{
Application->ShowException(&exception);
}
catch (...)
{
try
{
throw Exception("");
}
catch (Exception &exception)
{
Application->ShowException(&exception);
}
}
return 0;
}
注意修改项目源可以使维护困难的,因为IDE将其用于表单信息和依赖关系。有时手动更改可能会导致问题。
非常感谢您的回复。了解你选择表格的方式很有意思。正如你写的,我修改.dpr文件进行进一步维护时必须小心。 – sevenOfNine
delphi中的代码对我来说不成问题。非常感谢你。 – sevenOfNine
我添加了一个C++示例,以防万一有人遇到此答案并且不理解Delphi。 –