主程序做了一个托盘,点击托盘图标显示主窗体,再点击隐藏,怎样在点击事件中判断目前主窗体是显示状态还是隐藏了的?
另外还想用户点中主窗体的关闭按钮时不关闭程序,而是隐藏窗体。怎样做?

解决方案 »

  1.   

    窗口是否在显示状态:Form1.Showing;隐藏窗口: form1.hide;
      

  2.   

    onclose事件中Form.hide,行不通!
      

  3.   

    procedure TForm1.FormCloseQuery(Sender: TObject; var CanClose: Boolean);
    begin
     self.Hide;
      canclose:=false;
    end;
      

  4.   

    procedure TForm1.FormClose(Sender: TObject; var Action: TCloseAction);
    begin
      self.Hide;
      Action := canone;
    end;
      

  5.   

    CanClose: Boolean 可以拦截到关机的消息。
      

  6.   

    建议多搜一下,如果是标题栏的关闭按钮,
    应该会用到截取消息,然后停止该消息的发送
    我也想多看看WINDOWS的消息机制