VC++如何添加鼠标停留和离开的消息

  .h文件加入:  
                    afx_msg       LRESULT     OnMouseLeave(WPARAM   ,LPARAM   );        
  afx_msg       LRESULT     OnMouseHover(WPARAM   ,LPARAM   );        
   
  .cpp文件加入:  
              ON_MESSAGE(WM_MOUSELEAVE,OnMouseLeave)        
              ON_MESSAGE(WM_MOUSEHOVER,OnMouseHover)    
  LRESULT   CIconButton::OnMouseLeave(WPARAM     wParam,LPARAM   lParam)        
  {      
  InvalidateRect(NULL);  
  return       0;        
  }        
   
  LRESULT     CIconButton::OnMouseHover(WPARAM       wParam,LPARAM       lParam)        
  {        
  CClientDC   dc(this);  
  CRect   rt;  
  GetClientRect(&rt);  
  dc.Draw3dRect(0,0,  
  m_rect.right-m_rect.left,m_rect.bottom-m_rect.top,  
  RGB(0,0,0),RGB(10,10,10));  
  return       0;        
  }        
   
   
  void   CIconButton::OnMouseMove(UINT   nFlags,   CPoint   point)    
  {  
  //   TODO:   Add   your   message   handler   code   here   and/or   call   default  
   
  CButton::OnMouseMove(nFlags,   point);  
  TRACKMOUSEEVENT       tme;        
  tme.cbSize=sizeof(TRACKMOUSEEVENT);        
  tme.dwFlags=TME_HOVER       |       TME_LEAVE;        
  tme.dwHoverTime=HOVER_DEFAULT;      
  tme.hwndTrack=m_hWnd;    
          _TrackMouseEvent(&tme);        
  }

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值