截获WM_SYSCOMMAND消息。 窗体的类声明如下: TForm1 = class(TForm) private { Private declarations } public { Public declarations } procedure WMSysCommand(var Message: TWMSysCommand);message WM_SYSCOMMAND;//响应WM_SYSCOMMAND消息 end; WMSysCommand的实现如下: procedure TForm.WMSysCommand(var Message: TWMSysCommand); begin Inherited;//调用先前的处理函数 if (Message.CmdType and $FFF0 = SC_MINIMIZE) then ... //自己的处理 end;
procedure TForm1.WMSysCommand(var Message: TWMSysCommand); begin inherited; if (Message.CmdType=SC_MAXIMIZE) or (Message.CmdType=SC_SIZE) then//最大化 begin ... end else if (Message.CmdType=SC_RESTORE) then//復原 begin ... end; end;
窗体的类声明如下:
TForm1 = class(TForm)
private
{ Private declarations }
public
{ Public declarations }
procedure WMSysCommand(var Message: TWMSysCommand);message WM_SYSCOMMAND;//响应WM_SYSCOMMAND消息
end; WMSysCommand的实现如下:
procedure TForm.WMSysCommand(var Message: TWMSysCommand);
begin
Inherited;//调用先前的处理函数
if (Message.CmdType and $FFF0 = SC_MINIMIZE) then
... //自己的处理
end;
begin
inherited;
if (Message.CmdType=SC_MAXIMIZE) or (Message.CmdType=SC_SIZE) then//最大化
begin
...
end
else if (Message.CmdType=SC_RESTORE) then//復原
begin
...
end;
end;
applicationevent控件的onminimize的方法就成功了。
这个控件在additional面板上.