谁能告诉我,窗口在最大化时,发了什么消息???

解决方案 »

  1.   

    但是,不管最大还是最小化,改变窗口大小都会发出WM_SYSCOMMAND呀!
    怎样只拦截最大化的消息呢???
      

  2.   

    就是拦截WM_SYSCOMMAND呀.

    type
      TForm1 = class(TForm)
        Button1: TButton;
      private
        procedure WMSysCommand(var msg:TWMSysCommand);message WM_SYSCOMMAND;
        { Private declarations }
      public
        { Public declarations }
      end;implementation{$R *.dfm}
    procedure TForm1.WMSysCommand(var msg:TWMSysCommand);
    begin
      //SC_MAXIMIZED 最大化
      //SC_RESTORE   恢复
      if (Msg.CmdType=SC_MAXIMIZE) or (Msg.CmdType=SC_RESTORE) THEN
      ......
    END;
      

  3.   

    if iszoomed(handle) then
       showmessage('maximized')
    if isiconic(handle) then
       showmessage('minimized')