在implementation中: procedure TForm1.WMSysCommand(var wMessage: TWMSysCommand); begin if wmessage.CmdType=SC_CLOSE then begin //进行自己的处理 end else begin inherited; end; end;
procedure TForm11.Button2Click(Sender: TObject); begin Self.WindowState := wsMinimized; end;
procedure TForm1.Button1Click(Sender: TObject); begin PostMessage(form1.Handle,WM_SYSCOMMAND,SC_MINIMIZE,0); end;Button按钮最小化我会做像上面这样。但是放在OnClose里面不行。我想做OnClose事件最小化。
procedure TForm1.FormCloseQuery(Sender: TObject; var CanClose: Boolean); begin canclose:=false; form1.WindowState:=wsminimized; end;
haha,8楼的解对于初学者来说,等于没说。看看5楼的解法吧,正解
procedure TForm1.FormCloseQuery(Sender: TObject; var CanClose: Boolean); begin CanClose := False; Form1.WindowState := wsminimized; end;
在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;
begin
Self.WindowState := wsMinimized;
end;
begin
PostMessage(form1.Handle,WM_SYSCOMMAND,SC_MINIMIZE,0);
end;Button按钮最小化我会做像上面这样。但是放在OnClose里面不行。我想做OnClose事件最小化。
begin
canclose:=false;
form1.WindowState:=wsminimized;
end;
begin
CanClose := False;
Form1.WindowState := wsminimized;
end;