MFC下的键盘响应代码

MFC下的键盘响应代码


PreTranslateMessage(MSG* pMsg)函数中添加:

1、响应回车键:

if(pMsg->message==WM_KEYDOWN && pMsg->wParam==VK_RETURN)
    MessageBox("你按下了键盘上的回车键!");


2、响应上、下、左、右键:


CWnd* pWndNext;
if (pMsg->message==WM_KEYDOWN){
        switch (pMsg->wParam){
           case VK_LEFT:
           	AfxMessageBox("左键");
           	break;
           case VK_RIGHT:
           	AfxMessageBox("右键");
           	break;
           case VK_UP:
           	AfxMessageBox("上");
           	break;
           case VK_DOWN:
		AfxMessageBox("下");
		pWndNext = GetNextDlgTabItem(GetFocus());//跳转到下一控件
		if (pWndNext) 
		{
			pWndNext->SetFocus();
		}
           	break;
           case VK_SPACE:
           	AfxMessageBox("空格");
           	break;
       }
    }




3、VK值列表   

VK_CANCEL   		Ctrl+Break   
VK_TAB         		Tab   
VK_RETURN   		Enter     
VK_SHIFT     		Shift   
VK_CONTROL   		Ctrl   
VK_MENU        	 	Alt   
VK_LBUTTON 		01 鼠标左键   
VK_RBUTTON 		02 鼠标右键   
VK_CANCEL    		03 用于执行Ctrl+C或Ctrl+Break   
VK_MBUTTON 		04 鼠标中键   
VK_BACK 		08 Backspace键   
VK_TAB 			09 Tab键   
VK_CLEAR                0C Clear键   
VK_RETURN               0D Enter键   
VK_SHIFT                10 Shift键   
VK_CONTROL 		11 Ctrl键   
VK_MENU 		12 Arl键   
VK_PAUSE                13 Pause键   
VK_CAPITAL 		14 Capslock键   
VK_ESCAPE               1B Ese键   
VK_SPACE                20 SpaceBar键   
VK_PRIOR                21 PgUp键   
VK_NEXT 		22 PgDn键   
VK_END 			23 End键   
VK_HOME 		24 Home键   
VK_LEFT 		25 Left   Arrow键   
VK_UP 			26 Up   Arrow键   
VK_RIGHT                27 Right   Arrow键   
VK_DOWN 		28 Down   Arrow键   
VK_SELECT            	29 Select键   
VK_EXECUTE 		2B Execute键   
VK_SNAPSHOT 		2C PrintScreen键   
VK_INSERT            	2D Ins键   
VK_DELECT            	2E Del键   
VK_HELP 		2F Help键   
VK_0 			30 0键   
.........
VK_9 			39 9键   
VK_A 			41 A键   
… … …   
VK_Z 			5A Z键   
VK_NUMAPD0 		60 数字板0键   
… … …   
VK_NUMAPD9 		69 数字板9键   
VK_MULTIPY 		6A 乘号键   
VK_ADD 			6B 加号键   
VK_SEPARATOR 		6C Separator键   
VK_SUBSTRACT 		6D 减号键   
VK_DECIMAL 		6E 小数点键   
VK_DIVIDE           	6F 除号键   
VK_F1 			70 F1键   
… … …   
VK_F24 			87 F24键   
VK_NUMLOCK 		90 NumLock键   
VK_SCROLL            	91 ScrollLock键   

VK_ESCAPE         	Esc   
VK_SPACE           	Space   
VK_PRIOR           	Page   Up   
VK_NEXT             	Page   Down   
VK_END               	End   
VK_HOME             	Home   
VK_LEFT             	向左方向键   
VK_UP   		向上方向键
VK_RIGHT   		向右方向键
VK_DOWN   		向下方向键
VK_DELETE         	Delete   
VK_INSERT         	Inser   
VK_NUMPAD0~VK_NUMPAD9	小键盘上的0-9键   
VK_F1-VK_f12        	F1-F12键 



你可能感兴趣的:(C++)