《可视化 第07章 鼠标和键盘 教程.ppt》由会员分享,可在线阅读,更多相关《可视化 第07章 鼠标和键盘 教程.ppt(12页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、第第第第7 7章章章章 鼠标和键盘鼠标和键盘鼠标和键盘鼠标和键盘本章主要内容 鼠标的客户区消息和非客户区消息的处理 鼠标消息的捕获 处理键盘消息 7.1处理鼠标消息处理鼠标消息u根据产生鼠标消息时根据产生鼠标消息时鼠标光标所处的位置,鼠标光标所处的位置,鼠标消息分为两类:鼠标消息分为两类:l客户区鼠标消息客户区鼠标消息l非客户区鼠标消息非客户区鼠标消息 7.1处理鼠标消息处理鼠标消息MFC中,鼠标消息响应函数的原型一般为:afx_msg void OnLButtonDown(UINT nFlags,CPoint point);掩码掩码产生鼠标消息时光标在窗产生鼠标消息时光标在窗口客户区的位置口
2、客户区的位置7.1处理鼠标消息处理鼠标消息7.1处理鼠标消息处理鼠标消息例例7-1 7-1 编写绘制矩形的应用程序,按下鼠标左键,编写绘制矩形的应用程序,按下鼠标左键,矩形左上角移动到鼠标位置,而当鼠标左键和矩形左上角移动到鼠标位置,而当鼠标左键和shiftshift键同时按下时,矩形恢复原先位置。键同时按下时,矩形恢复原先位置。Step 1Step 2Step 3Step 4如如果果鼠鼠标标处处在在应应用用程程序序窗窗口口之之外外,还还希希望望可可以以接接受受鼠鼠标标消消息息的的话话,则则必必须须调调用用捕捕获获鼠鼠标标消消息息函数:函数:CWnd*SetCapture();完完成成了了所所
3、应应该该做做的的工工作作之之后后,应应用用程程序序应应该该及及时释放鼠标:时释放鼠标:BOOL ReleaseCapture();7.1处理鼠标消息处理鼠标消息7.2处理键盘消息处理键盘消息uWindows对每个按键定义了与设备无关的编码,对每个按键定义了与设备无关的编码,这种编码就叫做虚拟码。有了这个虚拟码,这种编码就叫做虚拟码。有了这个虚拟码,Windows程序员就可以不必理睬扫描码,而使程序员就可以不必理睬扫描码,而使用虚拟码来编写程序了。用虚拟码来编写程序了。虚虚拟拟码码扫描码扫描码7.2处理键盘消息处理键盘消息7.3应用程序窗口的焦点应用程序窗口的焦点u在某个具体时刻只有一个窗口才能接收到键盘在某个具体时刻只有一个窗口才能接收到键盘消息,这样的窗口叫做具有输入焦点的窗口。消息,这样的窗口叫做具有输入焦点的窗口。u当应用程序的窗口获得输入焦点时,会发出当应用程序的窗口获得输入焦点时,会发出WM_SETFOCUS消息;而当窗口失去输入焦消息;而当窗口失去输入焦点时,会发出点时,会发出WM_KILLFOCUS消息。消息。