欢迎来到天天文库
浏览记录
ID:57059696
大小:49.00 KB
页数:17页
时间:2020-07-30
《VC++6.0使用全程指导 学习全面使用方法课件.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、第9章鼠标和键盘内蒙古大学计算机学院魏宏喜第9章鼠标和键盘9.1键盘消息9.2鼠标消息9.3定时器第9章鼠标和键盘9.1键盘消息9.2鼠标消息9.3定时器9.1键盘消息(1of5)键盘消息的类型键盘是计算机的标准设备,因此以键盘作为程序的输入是最基本不过的了。MFC中有三种常见的键盘处理消息:消息名说明WM_KEYDOWN按下按键时发出此消息WM_KEYUP松开按键时发出此消息WM_CHAR按下按键时发出此消息,并转换为字符9.1键盘消息(2of5)说明:在MFC中,是以一组伪码(VirsualKey
2、)来判断按下或者松开键盘上的某个按键的。上面提到的WM_KEYDOWN和WM_KEYUP不会分辨出按下的按键字符的大小写(都是大写),而WM_CHAR会将伪码转换成字符,因此它能够分辨字母的大小写。9.1键盘消息(3of5)常用的按键的伪码:伪码16进制值说明VK_ESCAPE0x1b[Esc]键VK_LEFT0x25左方向键VK_UP0x26上方向键VK_RIGHT0x27右方向键VK_DOWN0x28下方向键VK_DELETE0x2e[Delete]键VK_INSERT0x2d[Insert]键9
3、.1键盘消息(4of5)伪码16进制值说明VK_SHIFT0x10[Shift]键VK_CONTROL0x11[Ctrl]键VK_BACK0x08[Backspace]键VK_TAB0x09[Tab]键VK_SPACE0x20空格键9.1键盘消息(5of5)除了上表中列出来的以外,还包括下面的伪码:VK_A~VK_Z表示A~ZVK_0~VK_9表示0~9VK_F1~VK_F12表示F1~F12第9章鼠标和键盘9.1键盘消息9.2鼠标消息9.3定时器9.2鼠标消息(1of2)MFC中处理鼠标的消息:消息
4、说明WM_LBUTTONDBLCLK双击鼠标左键发出的消息WM_LBUTTONDOWN按下鼠标左键发出的消息WM_LBUTTONUP松开鼠标左键发出的消息WM_RBUTTONDBLCLK双击鼠标右键发出的消息WM_RBUTTONDOWN按下鼠标右键发出的消息WM_RBUTTONUP松开鼠标右键发出的消息9.2鼠标消息(2of2)鼠标移动消息:WM_MOUSEMOVE鼠标滚轮消息:WM_MOUSEWHEEL在程序中,为某个类添加上述消息之后,类向导会自动帮助用户将它们映射成消息处理函数。第9章鼠标和键盘
5、9.1键盘消息9.2鼠标消息9.3定时器9.3定时器(1of4)定时器(Timer):用于每隔一段时间发出时间信息,当接收到这个时间消息的时候,程序便可以决定接下来要做的事情。定时器操作:(1)建立定时器;(2)相应WM_TIMER消息;(3)删除定时器;9.3定时器(2of4)建立定时器:使用CWnd::SetTimer()函数来为某个窗口建立一个定时器,并且每隔一段时间就自动发出WM_TIMER消息。SetTimer()函数原型如下:UINTCWnd::SetTimer(UINTnIDEvent,
6、//定时器编号UINTnElapse,//时间间隔void(CALLBACKEXPORT*lpfnTimer)//回调函数(HWND,UINT,UINT,DWORD));9.3定时器(3of4)参数说明:第一个参数是定时器的编号,这个编号是唯一的,在同一个窗口中可以同时设置多个定时器,这些定时器是通过它们各自的编号进行区分的。第二个参数是定时器发出WM_TIMER消息的时间间隔,单位是千分之一秒。第三个参数是设定当定时器发出WM_TIMER消息是所要执行的回调函数。通常不需要指定这个函数,因此,参数值
7、为NULL。9.3定时器(4of4)定时器通常是在窗口的OnCreate()函数或者视图类的OnInitialUpdate()函数中来创建的。删除定时器:当不需要定时器继续每隔一定时间间隔发出WM_TIMER消息的时候,可以使用CWnd::KillTimer()函数来删除定时器。KillTimer()函数原型:BOOLCWnd::KillTimer(intnIDEvent);第9章鼠标和键盘9.1键盘消息9.2鼠标消息9.3定时器
此文档下载收益归作者所有