我想做个托盘程序,在程序最小化时
我用了wm_syscommand消息,当他=SC_MINIMIZE时使窗体hide
可是点击状态栏最小化窗口的消息是什么?

解决方案 »

  1.   

    WM_SYSCOMMAND 消息,wParam 参数为 SC_MINIMIZE
      

  2.   

    最简洁方法:Application.OnMinimize:=Onminimize;
      

  3.   

    不需要消息,只要加上Application.Restore就可以了!
      

  4.   

    上面的好像不行啊,我是在窗体最小化里操作,
    但是点击window状态栏最小化发SC_MINIMIZEApplication.OnMinimize:=Onminimize;我看看Application.Restore,不是事件我不能写代码大家再看看有没有别的方法,谢谢
      

  5.   

    procedure TMainForm.WMSysCommand(var Msg: TMessage);
    begin
      if Msg.WParam=SC_MINIMIZE then
        begin
            Application.Minimize;
            ShowWindow(Application.Handle, SW_HIDE);
            SetWindowLong(Application.Handle,GWL_EXSTYLE,WS_EX_TOOLWINDOW);
        end;
      inherited;
    end;
    今天刚写的代码,没想到用了两次!