欢迎来到天天文库
浏览记录
ID:46332079
大小:38.50 KB
页数:9页
时间:2019-11-22
《第7章+鼠标和键盘》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、第7章鼠标和键盘鼠标的用户区消息处理键盘消息1.鼠标消息常用的用户区鼠标消息左键WM_LBUTTONDOWNON_WM_LBUTTONDOWN()WM_LBUTTONUPON_WM_LBUTTONUP()WM_LBUTTONDBCLKON_WM_LBUTTONDBCLK()右键WM_RBUTTONDOWNON_WM_RBUTTONDOWN()WM_RBUTTONUPON_WM_RBUTTONUP()WM_RBUTTONDBCLKON_WM_RBUTTONDBCLK()移动鼠标WM_MOUSEMOVEON_WM_MOUSEMOVE()OnLButtonDown(
2、UINTnFlags,CPointpoint)nFlags用于测试鼠标或键盘上其它键的状态,使之与相应的掩码按位与(&)掩码nFlags与掩码AND后,其值TRUE的含义MK_CONTROLSetiftheCTRLkeyisdown.MK_LBUTTONSetiftheleftmousebuttonisdown.MK_MBUTTONSetifthemiddlemousebuttonisdown.MK_RBUTTONSetiftherightmousebuttonisdown.MK_SHIFTSetiftheSHIFTkeyisdown.nFlags参数可以使用
3、的掩码例按下鼠标左键,显示此时CTRL和SHIFT键是否被按下模仿画图板程序,使用鼠标分别绘制直线、矩形、曲线改进上面程序,使以前绘制的图形能保留下来图形的保存与重绘2.键盘消息键盘消息说明WM_KEYDOWN任何键被按下WM_KEYUP任何键抬起WM_CHAR当按下字符键时产生此消息voidOnKeyDown(UINTnChar,UINTnRepCnt,UINTnFlags);voidOnKeyUp(UINTnChar,UINTnRepCnt,UINTnFlags);nChar为虚拟码当按下键盘上的某个按键时,键盘会产生与该键对应的编码扫描码(设备相关,
4、键盘类型不同则扫描码可能不同)。Windows对每个按键定义了与设备无关的编码虚拟码A~Z‘A’~’Z’//为相应的大写字符,未定义VK_X0-9‘0’~’9’//未定义VK_XF1-F12VK_F1~VK_F12上下左右键VK_UP、VK_DOWN、VK_LEFT、VL_RIGHTCTRL键VK_CONTROLSHIFT键VK_SHIFTvoidOnChar(UINTnChar,UINTnRepCnt,UINTnFlags);nChar为字符所对应的ASCII码为‘a’~’z’,’A’~’Z’,’0’~’9’区分大小写例设计一个程序,在用户区显示一个矩形当
5、按左箭头键时,可使此矩形向左移动;当按下R键时,可使此矩形向右移动;其它消息WM_SETFOCUSWM_KILLFOCUS例:当程序得到焦点和失去焦点时分别显示“程序得到焦点”和“程序失去焦点”WM_TIMER例:小球沿一定方向匀速运动,当碰到边界时反弹。
此文档下载收益归作者所有