版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、MFC程序设计,鼠标和键盘,作 者:李 季,主要内容,鼠标消息分类 客户区鼠标消息 非客户区鼠标消息 光标 键盘消息,鼠标消息分类,客户区鼠标消息 非客户区鼠标消息,客户区鼠标消息,客户区鼠标消息,当窗口的WNDCLASS包含类样式CS_DBLCLKS,在很短时间内同一鼠标键被连续单击两次时,第二次键按下消息被WM_xBUTTONDBLCLK消息取代。 默认情况下,框架窗口接受双击消息。,客户区鼠标消息,未注册双击消息,连续单击两次产生下面消息序列: WM_xBUTTONDOWN WM_xBUTTONUP WM_xBUTTONDOWN WM_xBUTTONUP,客户区鼠标消息,已注册双击消息,
2、连续单击两次产生下面消息序列: WM_xBUTTONDOWN WM_xBUTTONUP WM_xBUTTONDBLCLK WM_xBUTTONUP,客户区鼠标消息参数,CPoint point 指出光标位置,客户区坐标 在WM_MOUSEMOVE消息中,指出最近的光标位置 UINT nFlags 消息生成时鼠标键以及Shift键和Ctrl键的状态,客户区鼠标消息,非客户区鼠标消息,非客户区鼠标消息,无论窗口是否注册CS_DBLCLKS样式,WM_NCxBUTTONDBLCLK消息都要被发送。,非客户区鼠标消息参数,CPoint point 指出光标位置,屏幕坐标 在WM_MOUSEMOVE消息
3、中,指出最近的光标位置 UINT nHitTest 包含标识窗口非客户区上事件发生地点的命中测试码,非客户区鼠标消息参数,非客户区鼠标消息,ON_WM_NCLBUTTONDBLCLK() void CMainWindow:OnNcLButtonDblClk(UINT nHitTest, CPoint point) if(nHitTest != HTCAPTION) CWnd:OnNcLButtonDblClk(nHitTest, point); ,非客户区鼠标消息,NO_WM_NCHITTEST() UINT CMainWindow:OnNcHitTest(CPoint point) UINT
4、 nHitTest = CFrameWnd:OnNcHitTest(point); if(nHitTest = HTCLIENT) nHitTest = HTCAPTION; return nHitTest; ,光标,注册WNDCLASS,指定目标光标类型为类光标 CString strWndClass = AfxRegisterWndClass(0, AfxGetApp()- LoadStandardCursor(IDC_CROSS), (HBRUSH)(COLOR_WINDOW + 1), AfxGetApp()-LoadSteandardIcon (IDI_WINLOGO); Creat
5、e(strWndClass, _T(“Mouse Capture Demo(Capture Enabled)”);,光标,调用:SetCursor响应WM_SETCURSOR消息 ON_WM_SETCURSOR() BOOL CMainWindow:OnSetCursor(CWnd* pWnd, UINT nHitTest, UINT message) if(nHitTest = HTCLIENT) :SetCursor(m_hCursor); return TRUE; return CFrameWnd:OnSetCursor(pWnd, nHitTest, message);,光标,隐藏光标
6、 :ShowCursor(FALSE); 显示光标 :ShowCursor(TRUE); 显示光标的次数与隐藏光标的次数相同,才能再次显示光标,沙漏形光标,显示沙漏形光标 CWaitCursor wc; CWaitCursor的构造函数显示沙漏形光标,其析构函数还原原来的光标 如果在变量超出范围之前,还原光标可以调用CWaitCursor:Restore wc.Restore(); 如果想自定义表现形式,可以重载CWinApp:DoWaitCursor,键盘消息,击键消息 WM_KEYDOWN、WM_KEYUP WM_SYSKEYDOWN、WM_SYSKEYUP 击键消息响应函数 Afx_msg void OnMsgName(UINT nChar, UINT nRepCnt, UINT nFlags) 一般交给Windows去处理,键盘消息,字符消息 ON_WM_CHAR() void CWainWindow:OnChar(UINT nChar,
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 纺纱工道德竞赛考核试卷含答案
- 砌筑工安全规程评优考核试卷含答案
- 印染助剂复配工风险评估测试考核试卷含答案
- 2026年平板玻璃制造行业投资价值分析报告及未来五至十年成本优化与效率提升
- 普通磨工创新应用模拟考核试卷含答案
- 2026年耐火土石开采行业产业调研报告及未来五至十年ESG与绿色低碳转型
- 货运汽车司机岗前工作技能考核试卷含答案
- 船闸及升船机运行员安全培训考核试卷含答案
- 冰糖加工工岗中质量监控考核试卷含答案
- 2026年经济师考试中级经济师经济基础知识模拟试卷(含答案)
- 2026年甘肃省酒泉市属事业单位选调工作人员29人(第二批)笔试参考题库及答案解析
- 2026年公卫执业医师《医学微生物学》试题及答案
- 青岛华通集团招聘笔试题解析
- (2026秋版)部编版五年级语文上册全册教案(教学设计)
- 2026年水利工程质量检测员网上继续教育考试题库200道含完整答案【历年真题】
- 人工智能导论 课件 第2章 人工智能基础认知
- 安全生产法第七十条
- 人教版数学六年级上册第二单元测试卷(含解析)
- 雨课堂在线学堂《大学生国家安全教育》作业单元考核答案
- 会议摄影合同
- 铁路货车轮轴组装检修及管理规则
评论
0/150
提交评论