有没有具体的解决方案呢?谢谢

解决方案 »

  1.   

    http://msdn.microsoft.com/en-us/library/c14zdbww(VS.80).aspx
      

  2.   

    1.在OnInitDialog()中
    // enable tooltips 
    EnableToolTips(TRUE);//ToolTips 
    2.给控件一个ID如ID_TT,属性加‘notify'
    3.响应OnToolTipNotify( UINT id, NMHDR * pNMHDR, LRESULT * pResult )
    TOOLTIPTEXT *pTTT = (TOOLTIPTEXT *)pNMHDR;
    UINT nID =pNMHDR->idFrom;
    // idFrom is actually the HWND of the control=IDC_xxx
    if (pTTT->hdr.code==TTN_NEEDTEXT)
    {
     if (pTTT->uFlags & TTF_IDISHWND)
     {
       if(((CStatic*)GetDlgItem(IDC_TT))->m_hWnd==(HWND)nID)//
       {
        pTTT->lpszText="xxxxxxxxx!";//TT
       }
      return TRUE;
     }
     return(FALSE);
    }
    //这样加消息
    4.类h中
    virtual BOOL OnToolTipNotify( UINT id, NMHDR * pNMHDR, LRESULT * pResult );
    5.类Cpp中
    ON_NOTIFY_EX(TTN_NEEDTEXT,0,OnToolTipNotify)
    END_MESSAGE_MAP()
      

  3.   

    鼠标移到static控件后,要等1秒左右才出TT的。
    在OnToolTipNotify中加一条AfxMessageBox("haha");看看消息是否已产生。
      

  4.   

    其实我这使用CFormView来显示对话框的,所以里面就没有OnInitDialog()函数,只有OnInitialUpdate()
    这样以来还能用你说的方法么?
      

  5.   

    要在 PreTranslateMessage(MSG* pMsg) 中加入一句
    m_ToolTip.RelayEvent(pMsg);
      

  6.   

    完全可以,按我的方法,1。在OnInitialUpdate()