请问下点击程序红叉按钮的时候如何进入最小化?

解决方案 »

  1.   


      在private中:   
      procedure   WMSysCommand(var   wMessage:   TWMSysCommand);   message   WM_SysCommand;   
        
      在implementation中:     procedure   TForm1.WMSysCommand(var   wMessage:   TWMSysCommand);   
      begin   
          if wmessage.CmdType=SC_CLOSE then
           begin   
            //进行自己的处理
           end    
          else   
          begin   
            inherited;
           end;   
      end;   
        
      

  2.   

    procedure TForm11.Button2Click(Sender: TObject);
    begin
        Self.WindowState := wsMinimized;
    end;
      

  3.   

    procedure TForm1.Button1Click(Sender: TObject); 
    begin 
    PostMessage(form1.Handle,WM_SYSCOMMAND,SC_MINIMIZE,0);
    end;Button按钮最小化我会做像上面这样。但是放在OnClose里面不行。我想做OnClose事件最小化。
      

  4.   

    procedure TForm1.FormCloseQuery(Sender: TObject; var CanClose: Boolean);
    begin
    canclose:=false;
    form1.WindowState:=wsminimized;
    end;
      

  5.   

    haha,8楼的解对于初学者来说,等于没说。看看5楼的解法吧,正解
      

  6.   

    procedure   TForm1.FormCloseQuery(Sender:   TObject;   var   CanClose:   Boolean);
    begin
      CanClose := False;
      Form1.WindowState := wsminimized;
    end;