问题1,
自绘按钮中加入CToolTipCtrl功能,方法如下:1,
int CUIImageButton::OnCreate(LPCREATESTRUCT lpCreateStruct)
{
    if (CButton::OnCreate(lpCreateStruct) == -1)
        return -1;    //this->EnableToolTips(TRUE);
    m_ToolTip.Create(this);
    m_ToolTip.AddTool(this,m_Caption);
    m_ToolTip.Activate(TRUE);
    SetWindowRgn(m_Rgn, true);
    return 0;
}
2,
PreTranslateMessage中,加入
m_ToolTip.RelayEvent(pMsg);
3,OnMouseMove 中加入:
m_ToolTip.UpdateTipText(m_Caption, this);现在是,鼠标放上去没提示,当点下鼠标是才有提示,为啥呀??郁闷死我了。。问题2,
ClinkCtrl控件的用法,我用的是VS2008,在对话框上加入ClinkCtrl控件后,对话框NEW不出来,就是HWND为空,去掉这个控件就好用(我的对话框是继承一个继承了CDIALOG的类)。。求高手指点呀。。看网上也有人遇到这个问题,有人回答说是加入
#define _WIN32_WINNT 0x0501
#define _WIN32_IE 0x0500 
然后 使用manifest文件,拷贝资源中的[].manifest到exe所在目录下,然后改名[].exe.manifest 
我也试了,没用。高手们救我呀

解决方案 »

  1.   

    3,OnMouseMove 中加入:
    m_ToolTip.UpdateTipText(m_Caption, this);可能是这里有问题,OnMouseMove可能要有鼠标down和up才起作用。先这样测试:
    m_ToolTip.AddTool(this,“测试”);
      

  2.   

    我跟踪了,OnMouseMove在鼠标落上去就有反应了。。只是没TOOLTIP不起作用。。
      

  3.   

    问题1解决了,我在OnMouseMove里又AddTool一下就好了,这样是不是我的在OnMouseLeave中把TOOLTIP用POP还是用DelTool 把它再卸掉呀??/求高手指点,总觉的不对。。