if messagedlg('要退出本系统吗?     ',mtinformation,[mbYes,mbNo],0)=mrYes then
begin
form1.Free;
application.Terminate;
end;为什么我点击那个小叉叉的时候系统会弹出一个对提示框,目的是想点YES的时候关闭系统,结果点击NO也会关闭系统?请各位帮助,谢谢!

解决方案 »

  1.   

    procedure TForm1.FormCloseQuery(Sender: TObject; var CanClose: Boolean);
    begin
      CanClose:=messagedlg('要退出本系统吗?     ', mtinformation, [mbYes, mbNo], 0) = mrYes;
    end;procedure TForm1.FormClose(Sender: TObject; var Action: TCloseAction);
    begin
      application.Terminate;
    end;
      

  2.   

    代码要写到 FormcloseQuery 事件里,通过设置它的 CanClose 属性来实现关闭还是不关闭.
    代码楼上已经给了.
      

  3.   

    if messagedlg('要退出本系统吗?     ', mtinformation, [mbYes, mbNo], 0) = mrYes;
      

  4.   

    写到closeQuery 事件里,通过设置它的 CanClose 属性来实现是否可以关闭.
    代码如1楼