等候...

解决方案 »

  1.   

    在application.OnMinimized事件中加入 mainform.hide就ok了
      

  2.   

    截取WM_ShowWindow消息。
    procedure TFrm....WMShowWindow(var Message:TWMShowWindow);
    begin
      inherited;
      if Message.Status=SW_PARENTCLOSING then
      begin
         {***截取窗体最小化的消息,重载,隐藏窗体并显示任务栏图标***}
         ShowWindow(Application.Handle,SW_HIDE);     
         SetWindowLong(Application.Handle, GWL_EXSTYLE,WS_EX_TOOLWINDOW);
         {***显示任务栏图标过程,我是用控件的,:)***}
         ATrayIcon.Active :=True;
      end
      else
      begin
         ShowWindow(Application.Handle,SW_SHOW);
         SetWindowLong(Application.Handle, GWL_EXSTYLE,not WS_EX_TOOLWINDOW);
         { 隐藏任务栏图标过程 }
         ATrayIcon.Active :=False;
      end;
    end;