如何在窗体关闭事件里中止关闭,Exit;,Break 都不行。

解决方案 »

  1.   

    专门有个事件OnCloseQuery的。procedure TForm1.FormCloseQuery(Sender: TObject; var CanClose: Boolean);
    begin
       Canclose := False;
    end;
      

  2.   

    楼上正确.FormCloseQuery正是在Form关闭前执行的procedure TForm1.FormCloseQuery(Sender: TObject; var CanClose: Boolean);
    begin
      if Application.MessageBox(PChar('是否要关闭?'),PChar('请确认'),1) <> mrOK
         then CanClose := False;
    end;也可以在FormClose事件中抛出一个异常:procedure TForm1.FormClose(Sender: TObject; var Action: TCloseAction);
    begin
      if Application.MessageBox(PChar('是否要关闭?'),PChar('请确认'),1) <> mrOK
         then Abort;
    end;
      

  3.   

    再问一下,如何设置自己的程序支持的文件呢,比如我想让 *.mmm 格式的文件双击打开时 直接调用自己写的这个程序打开,并且 *.mmm 的图标和应用程序的图标一样.还有一点,当用户在选择 打开方式 的时候选择本程序,如何打开,也就是如何得到文件路径?
      

  4.   

    建议一个贴子不要问两个问题.关于第二个问题,可以参阅此贴http://community.csdn.net/Expert/topic/5431/5431920.xml?temp=.6642877