我在程序中自己添加了一个CBUTTON的子类,然后增加了一个OnMouseMove(UINT nFlags, CPoint point);
问题在于,我的鼠标划过按钮的时候,根本没有触发上述事件,请高手给讲讲

解决方案 »

  1.   

    比如添加一个子类如Cmybutton,然后在H里面做消息映射CPP里面CBUTTON::OnMouseMove(UINT nFlags, CPoint point);写我需要的过程,就这个样子。
      

  2.   

    不行的,鼠标一到按钮上,point就得不到象素坐标信息.
      

  3.   

    用CLASSWIZARD去自动进行消息映射。或者在类窗口中右击你的CMyButton类,添加Windows消息响应。在去CPP的相关函数去加代码。
      

  4.   

    我的意思是你怎么使用CMyButton类来声明和定义对象的?
      

  5.   

    m_btn1.SubclassDlgItem(IDCANCEL,this);
    m_btn1.SetTooltipText(_T("退出!"));
    m_btn1.SetIcon(IDI_ICON1,IDI_ICON2);//这一句就是显示不同的位图
    m_btn1.SetRounded(TRUE);
    m_btn1.SetBtnCursor(IDC_CURSOR1);//显示鼠标形状
    m_btn1.SetColor(CButtonST::BTNST_COLOR_BK_OUT, RGB(120,150,255));
    m_btn1.SetColor(CButtonST::BTNST_COLOR_FG_IN, RGB(255,0,0));
    m_btn1.SetColor(CButtonST::BTNST_COLOR_BK_IN, RGB(120,150,255));
    m_btn1.SetColor(CButtonST::BTNST_COLOR_BK_FOCUS, RGB(120,150,255));
    m_btn1.SetColor(CButtonST::BTNST_COLOR_FG_FOCUS, RGB(120,150,255));
    要在网上下载一个CButtonST类