键盘与鼠标响应.ppt
《键盘与鼠标响应.ppt》由会员分享,可在线阅读,更多相关《键盘与鼠标响应.ppt(29页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、键盘与鼠标响应键盘响应鼠标响应键盘响应编程示例键盘响应窗口焦点虚拟码窗口焦点键盘消息只有具有输入焦点的窗口才能接收到:窗口函数通过获取以下消息确定窗口是否具有输入焦点:WM_SETFOCUS:窗口接收输入焦点WM_KILLFOCUS:窗口失去输入焦点虚拟码扫描码:键盘上的键的唯一性标识。虚拟码:与设备无关的键盘编码,其值存放在键盘消息的wParam,用以标识哪一个键被按下或释放。设备驱动程序截取扫描码后,翻译成虚拟码,由应用程序处理。常用虚拟码VK_LBUTTON鼠标左键VK_MBUTTON鼠标中键VK_RBUTTON鼠标右键VK_SHIFTShift键VK_MENUAlt键VK_CAPITA
2、LCapsLock键VK_PRIORPageUp键VK_ENDEnd键VK_LEFT左箭头键VK_UP上箭头键VK_0VK_909键VK_BACK退格键VK_TAB制表键VK_RETURN回车键VK_CONTROLCtrl键VK_PAUSEPause键VK_ESCAPEEsc键VK_NEXTPageDown键VK_HOMEHome键VK_RIGHT右箭头键VK_DOWN下箭头键VK_AVK_ZAZ键键盘消息按键消息系统按键消息非系统按键消息字符消息系统字符消息非系统字符消息按键消息当用户按下或松开一个键时产生按键消息。系统按键消息:使用Alt键与相关输入键产生的消息。由windows系统内部直
3、接处理,应用程序不必处理。WM_SYSKEYDOWN按下系统键WM_SYSKEYUP松开系统键WM_KEYDOWN按下非系统键WM_KEYUP松开非系统键 非系统按键消息:不使用Alt键组合的按键消息,由应用程序处理,例如:Home,End,上、下、左、右移动键。lParam表示的含义常用的有四位:015位:重复计数位。当键一直被按着时,计算按键次数29位:标识该键是否与Alt键一同被按下。30位:标识键的先前状态31位:标识键被按下还是被松开。按键消息的wParam包含了识别按下的键的虚拟码。字符消息当一个按键的组合(按下键松开键附加字符消息)是一个可显示的字符时,就产生了一个字符消息。非系
4、统字符消息函数TranslateMessage处理WM_KEYDOWN产生的消息)WM_CHAR非系统字符WM_DEADCHAR非系统死字符系统字符消息函数TranslateMessage处理WM_SYSKEYDOWN产生的消息WM_SYSCHAR系统字符WM_SYSDEADCHAR系统死字符死字符:本身不能显示但是能修改其他字符显示的字符鼠标响应加载光标:HCURSOR hCursor1;hCursor1LoadCursor(hInstance,/应用程序当前实例句柄IDC_ARROW/系统光标)SetCursor(hCursor1);系统预定义的光标IDC_ARROW箭头光标IDC_CRO
5、SS十字光标IDC_IBEAMI形光标IDC_ICON空图标IDC_SIZEALLIDC_SIZENESWIDC_SIZENSIDC_SIZENWSEIDC_SIZEWE方向箭头光标IDC_UPARROW垂直箭头光标IDC_WAIT计时光标鼠标消息lParamLOWORD(lParam)光标X坐标HIWORD(lParam)光标Y坐标窗口左上角为原点,向右为正,向下为正。wParam描述虚键状态,常用来检测Shift和Ctrl键是否按下MK_CONTROL按下Ctrl键MK_LBUTTON按下鼠标左键MK_MBUTTON按下鼠标中键MK_RBUTTON按下鼠标右键MK_SHIFT按下Shift
6、键例如:Case WM_LBUTTONDOWN:if(wParam&MK_CONTROL)/检测Ctrl键是否按下break;鼠标双击使窗口函数能接受到鼠标双击的消息:第一步,定义窗口类:wndclass.style=CS_DBLCLKS;第二步,接受鼠标双击消息:case WM_LBUTTONDBLCLK:case WM_MBUTTONDBLCLK:case WM_RBUTTONDBLCLK;捕获鼠标SetCapture(hwnd);不管鼠标光标处于何处(包括窗口外),窗口都能接收到鼠标消息,同时系统功能键失效,而且其他窗口都得不到鼠标消息。ReleaseCapture();释放鼠标,其它窗
7、口可正常接受鼠标消息。键盘响应编程示例#define X 5/每行5个字符#define Y(4+1)/每页显示4行long WINAPI WndProc(HWND hWnd,UINT iMessage,UINT wParam,LONG lParam)static char charbufXY;static int nArrayPosY=0,0,0,0,0;static int nXCharY=0,0,0,0,0;static int nYCharY=0,0,0,0,0;static int nNumCharY=0,0,0,0,0;static int nTextStartXY=0,0,0,0
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 键盘 鼠标 响应
限制150内