设为首页 加入收藏

TOP

17.4.2 设置鼠标左键按下时的光标
2013-10-07 14:39:08 来源: 作者: 【 】 浏览:63
Tags:17.4.2 设置 鼠标 左键按 时的 光标

17.4.2  设置鼠标左键按下时的光标

添加鼠标左键按钮按下事件,修改鼠标左键按下时的光标。

  1. 01  void CMyBookDlg::OnLButtonDown(UINT nFlags, CPoint point)   
  2. 02  {  
  3. 03      CRgn rgnNormal,rgnLeft,rgnRight;        //定义3个区域  
  4. 04      rgnNormal.CreateRectRgn(区域1);  
  5. 05      rgnLeft.CreateRectRgn(区域2);  
  6. 06      rgnRight.CreateRectRgn(区域3);  
  7. 07      if(rgnNormal.PtInRegion(point))     //区域1的光标  
  8. 08      {  
  9. 09          SetCursor(AfxGetApp()->LoadCursor(IDC_NORMAL));  
  10. 10      }  
  11. 11      else if(rgnLeft.PtInRegion(point))      //区域2的光标  
  12. 12      {  
  13. 13          SetCursor(AfxGetApp()->LoadCursor(IDC_LEFT));  
  14. 14          if(!m_bTOnce &&! m_bAuto)  
  15. 15          m_x += 40;  
  16. 16      }  
  17. 17      else if(rgnRight.PtInRegion(point)) //区域3的光标  
  18. 18      {  
  19. 19          SetCursor(AfxGetApp()->LoadCursor(IDC_RIGHT));  
  20. 20          if(!m_bTOnce &&! m_bAuto)  
  21. 21          m_x += 40;  
  22. 22      }  
  23. 23      CDialog::OnLButtonDown(nFlags, point);  
  24. 24  }  

注意:区域1、区域2及区域3应该是3个矩形区域,在此为了便于理解用汉字代替。

【代码解析】

第3~6行定义了3个不同的区域,第7~22行根据具体情况设置鼠标光标。第7~10行设置鼠标在区域1按下时的光标。第11~16行设置鼠标在区域2按下时的光标。第17~22行设置鼠标在区域3按下时的光标。鼠标在左侧区域2中按下的效果如图17.14所示。

 
图17.14  鼠标在左侧区域2中按下的效果

】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
分享到: 
上一篇17.2.3 将位图资源设置为按钮的背.. 下一篇17.3.3 编码实现图像作为对话框的..

评论

帐  号: 密码: (新用户注册)
验 证 码:
表  情:
内  容: