我想实现在系统托盘上面显示一个窗口,我用dlg.MoveWindow(858,641,158,80);为什么看不到效果?

解决方案 »

  1.   

    系统托盘不是用MoveWindow来显示出来的。
    而是用Shell_NotifyIcon函数来显示出来的。BOOL CTrayNotifyIcon::Create(CWnd *pNotifyWnd, UINT uID, CString strTooltipText, HICON hIcon, UINT nNotifyMessage)
    {
    RemoveIcon();
      //Make sure Notification window is valid
      ASSERT(pNotifyWnd && ::IsWindow(pNotifyWnd->GetSafeHwnd()));
      m_pWnd = pNotifyWnd;  //Make sure we avoid conflict with other messages
      ASSERT(nNotifyMessage >= WM_USER);  //Tray only supports tooltip text up to 64 characters
      if (strTooltipText.GetLength()>63)
      strTooltipText=strTooltipText.Left(63);
      m_NotifyIconData.cbSize = sizeof(m_NotifyIconData);
      m_NotifyIconData.hWnd = pNotifyWnd->GetSafeHwnd();
      m_NotifyIconData.uID = uID;
      m_NotifyIconData.uFlags = NIF_ICON | NIF_MESSAGE | NIF_TIP;
      m_NotifyIconData.uCallbackMessage = nNotifyMessage;
      m_NotifyIconData.hIcon = hIcon;
      strcpy(m_NotifyIconData.szTip, strTooltipText);  BOOL rVal = Shell_NotifyIcon(NIM_ADD, &m_NotifyIconData);
      m_bCreated = rVal;  return rVal;
    }
      

  2.   

    我不是做托盘,我是想实现类似MSN登陆时显示的那个窗体
      

  3.   

    就是在屏幕右下角显示一个窗体,应该如何做?
    dlg.MoveWindow(858,641,158,80,TRUE);为什么没有效果?
      

  4.   

    系统托盘编程完全指南(一)
    http://www.vckbase.com/document/viewdoc/?id=492
    系统托盘编程完全指南(二)
    http://www.vckbase.com/document/viewdoc/?id=495
    系统托盘编程完全指南(三)
    http://www.vckbase.com/document/viewdoc/?id=498