uses
Forms,
Unit1 in 'Unit1.pas' {Form1},
Unit2 in 'Unit2.pas' {Form2},
Unit3 in 'Unit3.pas' {Form3};
{$R *.res}
begin
Application.Initialize;
Application.CreateForm(TForm1, Form1);//先创建mdi主窗体
try
form2:=Tform2.Create(application);//form2为一个非子窗体
form2.ShowModal ;
finally
if form2.Button1.ModalResult =1 then
Halt
else
begin
首先保证窗体不是自动生成的,在Project->Option->forms里把自窗体从Auto区移出
然后动态生成此窗体,showmodal出
例:
Application.CreateForm(TFrmLogOn, FrmLogOn);
with FrmLogOn do
begin
ShowModal;
end;
FreeAndNil(FrmLogOn);
在程序部份加入:
procedure TForm2.WMSysCommand(var Msg: TWMSysCommand);
var
btScreen: TRect;
begin
if (Msg.CmdType = SC_MINIMIZE) or
// (Msg.CmdType = SC_MAXIMIZE) or
(Msg.CmdType = SC_Close) then
begin
btScreen := Rect(0, 0, Screen.Width, Screen.Height);
ClipCursor(@btScreen);
inherited;
end;
end;