30分呀!有点少;呵呵,谢谢,要给分的
重载createParams()就可以了;
procedure CreateParams(var Params: TCreateParams); override ;
procedure CreateParams(var Params: TCreateParams);
begin
  inherited;
  
  Params.WndParent := 0;
end;

解决方案 »

  1.   

    Samples->TrayIconDelphi自带的VCL
      

  2.   

    可以使用TNotifyIconData
    procedure TForm1.IconOnClick(var message:TMessage);
    var
      p:TPoint;
    begin
      //如果按下的是双击则显示Form2
      if((message.lParam=WM_LBUTTONDBLCLK) then
        Form2.Show;
      //如果按下的是鼠标右键,则显示弹出菜单
      if(message.lParam=WM_RBUTTONDOWN)then
      begin
        GetCursorPos(p);
        PopupMenu1.Popup(p.x,p.y);
      end;
    end;
      

  3.   

    请问:sdqhlyf(彩波)
    如何实现!!源码???
      

  4.   

    拦截系统窗体发出的最小化消息,在右下角显示图标
    procedure TControlE.ShowNotifyIcon(var ShowIconMsg:TWMSysCommand);
    var
      Icon:TIcon;
    begin
      if ShowIconMsg.CmdType=SC_MINIMIZE  //如果是最小化消息
      then begin
        Icon:=TIcon.Create;  //Icon变量用来装入任务栏图标
        Icon.LoadFromFile('放图标的位置');
        new(pTaskBarIcon);
        with pTaskBarIcon^ do  //给pTaskBarIcon赋值
        begin
          cbSize:=sizeof(TNotifyIconData);
          Wnd:=ControlE.WindowHandle;
          uID:=0;
          uFlags:=NIF_ICON or NIF_MESSAGE or NIF_TIP;
          uCallbackMessage:=WM_USER;  //当在任务栏图标上发生鼠标事件时,
          // 向Windows发送标准消息WM_USER
           hIcon:=Icon.Handle;
           StrCopy(szTip,'酷音酷放');
          end;
          Shell_NotifyIcon(NIM_ADD,pTaskBarIcon);  //给通知域添加图标
          ControlE.Visible:=false;  //使音乐播放器窗口不可见
          end
        else  //如果不是最小化消息
       inherited;  //将继承Windows处理WM_SYSCOMMAND时的方法
     end;
    还原过程:自己加上鼠标双击事件
      ControlE.Visible:=True;  //恢复音乐播放器窗口  Shell_NotifyIcon(NIM_DELETE,pTaskBarIcon);  //删除任务栏图标  dispose(pTaskBarIcon);  //释放pTaskBarIcon
    这是我自己在做一个多媒体播放器的时候用的方法,自己完善一下就可以了!