《第五讲鼠标.ppt》由会员分享,可在线阅读,更多相关《第五讲鼠标.ppt(18页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、第五讲 鼠标鼠标基础n检测鼠标检测鼠标GetSystemMetricsGetSystemMetrics (SM_MOUSEPRESENT)(SM_MOUSEPRESENT)n鼠标按键个数鼠标按键个数GetSystemMetricsGetSystemMetrics (SM_CMOUSEBUTTONS)(SM_CMOUSEBUTTONS)显示区域鼠标消息键键按下按下释放释放双击双击左左 WM_LBUTTONDOWNWM_LBUTTONUPWM_LBUTTONDBLCLK中中 WM_MBUTTONDOWNWM_LBUTTONUPWM_MBUTTONDBLCLK右右 WM_RBUTTONDOWNWM_
2、RBUTTONUPWM_RBUTTONDBLCLKCONNECTn实例n源码双击鼠标按键双击鼠标按键n有效区域有效区域系统字体字符的平均宽度,半个字符的高度系统字体字符的平均宽度,半个字符的高度n窗口处理双击消息窗口处理双击消息wndclasswndclass.style=CS_HREDRAW|.style=CS_HREDRAW|CS_VREDRAW|CS_DBLCLKS;CS_VREDRAW|CS_DBLCLKS;双击消息WM_LBUTTONDOWNWM_LBUTTONDOWNWM_LBUTTONUPWM_LBUTTONUPWM_LBUTTONDOWNWM_LBUTTONDBLCLKWM_L
3、BUTTONUPWM_LBUTTONUP设置鼠标双击属性n双击最大间隔时间双击最大间隔时间SetDoubleClickTimeSystemParameterInfon有效区域有效区域SystemParameterInfo非显示区域鼠标消息键键按下按下释放释放双击双击左左 WM_NCLBUTTONDOWNWM_NCLBUTTONUPWM_NCLBUTTONDBLCLK中中 WM_NCMBUTTONDOWNWM_NCLBUTTONUPWM_NCMBUTTONDBLCLK右右 WM_NCRBUTTONDOWNWM_NCRBUTTONUPWM_NCRBUTTONDBLCLK屏幕坐标与客户显示区域坐标命
4、中测试命中测试nWM_NCHITTESTn先于所有其它的显示区域和非显示区域鼠标消息nlParam参数含有鼠标位置的x和y屏幕坐标,wParam参数没有用nWindows用WM_NCHITTEST消息产生与鼠标位置相关的所有其它鼠标消息n检测码附加消息的产生用户从系统菜单选择了用户从系统菜单选择了CloseCloseWindowProcWindowProcDefWindowProcDefWindowProcWM_SYSCOMMANDWM_SYSCOMMANDWM_SYSCOMMANDWM_SYSCOMMANDWM_CLOSEWM_CLOSEWM_CLOSEWM_CLOSEWM_DESTROYW
5、M_DESTROYDestroyWindowDestroyWindowWM_QUITWM_QUIT双击系统菜单图标双击系统菜单图标WM_NCHITTESTWM_NCLBUTTONDBLCLKwParam=HTSYSMENUWM_SYSCOMMANDwParam=SC_CLOSEWindowProcWindowProcDefWindowProcDefWindowProc用户从系统菜单选择了用户从系统菜单选择了CloseCloseWM_LBUTTONDOWNWM_NCHITTESTCHECKER1n实例n源码CHECKER2加入键盘接口加入键盘接口 n实例n源码拦截鼠标拦截鼠标n一个窗口消息处理程序通常只在鼠标光一个窗口消息处理程序通常只在鼠标光标位于窗口的显示区域,或非显示区域标位于窗口的显示区域,或非显示区域上时才接收鼠标消息。一个程序也可能上时才接收鼠标消息。一个程序也可能需要在鼠标位于窗口外时接收鼠标消息。需要在鼠标位于窗口外时接收鼠标消息。如果是这样,程序可以自行如果是这样,程序可以自行“拦截拦截”鼠鼠标标BLOKOUT1 n实例n源码BLOKOUT2n实例n源码鼠标滑轮鼠标滑轮n实例n源码