鼠标、键盘相关(Mouse、Keyboard)相关
文章平均质量分 85
duxiuxing
这个作者很懒,什么都没留下…
展开
-
修改鼠标光标的形状(二)
继续上一篇文章未完的话题,下面继续通过代码对之前提到的三种方法进行解释。 在 CMyDialog 增加成员变量 HCURSOR m_hMyCurosr; 并在 CMyDialog 构造函数中将其初始化: m_hMyCurosr = NULL; 我的想法是通过 CMyDialog::m_hMyCurosr 来保存所要使用的鼠标光标形状,当其为 NULL 的时候原创 2007-05-07 22:11:00 · 2550 阅读 · 0 评论 -
修改鼠标光标的形状(一)
我还是比较习惯通过案例说明问题,需求案例描述如下:实现一个从 CDialog 派生的窗口类,要求当鼠标移动到窗口客户区的时候,修改鼠标指针的形状,使其显示一个小手的形状。 为了后面阐述方便,我们假设该派生窗口类名称为 CMyDialog,鼠标光标对应资源为 IDC_CURSOR_HAND。经常看到有的同僚会用下面这种不太好的方法来实现上面的需求:(1)在 CMyDialog原创 2007-05-07 21:19:00 · 4299 阅读 · 0 评论 -
修改鼠标光标的形状(三)
方法二:通过 AfxRegisterClass() 或者 AfxRegisterWndClass() 直接向系统注册一个指定鼠标光标的窗口类型。 在注册窗口类型时所指定的这个鼠标光标又称为全程光标。 在 MFC 框架之下,我们通常把这一步操作放在 CWnd::PreCreateWindow() 函数中完成。BOOL CMyDialog::PreCreateWindow(CREATE原创 2007-05-11 00:06:00 · 2293 阅读 · 0 评论 -
修改鼠标光标的形状(四)
方法三:沙漏光标为 Windows 操作系统本身默认支持之特性,微软已经把对沙漏光标的支持封装在 MFC 框架当中,开发人员可以不需要为此而在程序中引入 Cursor 资源。在 MFC 程序中,可以使用以下三种方式来操作沙漏光标:(1)CWinApp::DoWaitCursor(); (2)CCmdTarget::BeginWaitCursor(),CCmdTarget::EndWaitCurso原创 2007-05-14 09:40:00 · 2594 阅读 · 2 评论 -
修改鼠标光标的形状(五)
通过上一篇,我们已经知道 MFC 对沙漏光标的几种操作方式最终都是通过调用 CWinApp::DoWaitCursor() 来实现的。以下是 CWinApp::DoWaitCursor() 的实现代码:void CWinApp::DoWaitCursor(int nCode){ // 0 => restore, 1=> begin, -1=> end ASSERT(nC原创 2007-05-18 11:41:00 · 2399 阅读 · 0 评论