只要在最后窗口中在其onclose事件中写入即可: procedure TForm3.FormClose(Sender: TObject; var Action: TCloseAction); begin form2.close; form1.Close; end;
procedure Tform1.button1onclick() begin if not Assigned(form2) then form2:=Tform2.creat(application); form2.showmodal; form2.free; form2:=nil; end; form2显示后没有在他的onclose事件中写任何代码.
我试了一下,不会呀!你Form2有什么问题代码没有。
to yzykjh 如果有问题,编译时就通不过吧,但编译时没有出任何错误。顺便提一下,编译时form1是与启动窗口放在一起的。
是不是你在第二个窗口的onclose事件中添加了什么代码?
比如
application.Terminate;
一、 第一个窗口.close;
二、application.terminate;
procedure TForm3.FormClose(Sender: TObject; var Action: TCloseAction);
begin
form2.close;
form1.Close;
end;
begin
if not Assigned(form2) then
form2:=Tform2.creat(application);
form2.showmodal;
form2.free;
form2:=nil;
end;
form2显示后没有在他的onclose事件中写任何代码.
如果有问题,编译时就通不过吧,但编译时没有出任何错误。顺便提一下,编译时form1是与启动窗口放在一起的。