现在已经实现了点击最小化按钮缩成托盘的功能,不过又发现当窗体还没缩成托盘的时候点击任务栏上程序的图标让程序最小化,这种最小化不能使程序缩成托盘,请问该怎么做?

解决方案 »

  1.   

    这个问题我也问过,没找到好的处理方法。
    不过你可以直接用个托盘控件cooltray来实现。
      

  2.   

    这个我实现过,就一条api语句,但原来代码的硬盘现在cmos不认了,哭不声来……
      

  3.   

    to merkey2002(小样的)   我不得以开始用CoolTrayIcon这个控件了,请问如果想实现我上面的这个效果应该怎么设置,另外点击最小化按钮缩成托盘又应该怎么设置
      

  4.   

    点击窗口的最小化按钮最小化的是Form,而在任务栏按钮上弹出的菜单中的最小化是最小化Application。现在你应该知道怎么做了吧!对Application.OnMinimize赋值
      

  5.   

    楼上的,能不能说得再清楚点,这个赋值的语句应该放在哪儿呢,具体又应该怎么赋值呢(用控件来做)
    Application.OnMinimize是个TNotifyEvent类型的东西,我真不知道该怎么赋值
      

  6.   

    TNotifyEvent类型是要赋一个方法给它的。
    你建个    
    procedure xxx(Sender:TObject);
    这样的过程,然后
    Application.OnMinimize:=xxx;
    -------
    CoolTrayIcon这个我等下找找看
      

  7.   

    参考如下代码:
    procedure TForm1.FormCreate(Sender: TObject);
    begin
       Application.OnMinimize := AppMinimize;
    end;procedure TForm1.AppMinimize(Sender: TObject);
    begin
      ShowWindow(Application.Handle, SW_HIDE);
      //生成托盘的代码
    end;。
    在你的托盘消息处理程序中调用:ShowWindow(Application.Handle, SW_SHOW);
    Application.Restore;