VK_LBUTTON鼠标左键
VK_RBUTTON鼠标右键
VK_CANCEL Control-break过程
VK_MBUTTON鼠标中键
VK_BACK BACKSPACE键
VK_TAB TAB键
VK_CLEAR CLEAR键
VK_RETURN DENTER键
VK_SHIFT SHIFT键
VK_CONTROL CTRL键
VK_MENU ALT键
VK_PAUSE PAUSE键
VK_CAPITAL CAPSLOCK键
VK_ESCAPE ESC键
VK_SPACE SPACEBAR
VK_PRIOR PAGEUP键
VK_NEXT PAGEDOWN键
VK_END END键
VK_HOME HOME键
VK_LEFT LEFTARROW键
VK_UP UPARROW键
VK_RIGHT RIGHTARROW键
VK_DOWN DOWNARROW键
VK_SELECT SELECT键
VK_EXECUTE EXECUTE键
VK_SNAPSHOT PRINTSCREEN键(用于Windows3.0及以后版本)
VK_INSERT INS键
VK_DELETE DEL键
VK_HELP HELP键
///////////////////////////////////////////////////
对于字母键和非小键盘上的数字键,直接在单引号中加入该键就行.
比如:a键:'A'
1键:'1'
//////////////////////////////////////////////
VK_LWIN LeftWindows键(Microsoft自然键盘)
VK_RWIN RightWindows键(Microsoft自然键盘)
VK_APPS Applications键(Microsoft自然键盘)
VK_NUMPAD0 数字小键盘上的0键
VK_NUMPAD1 数字小键盘上的1键
VK_NUMPAD2 数字小键盘上的2键
VK_NUMPAD3 数字小键盘上的3键
VK_NUMPAD4 数字小键盘上的4键
VK_NUMPAD5 数字小键盘上的5键
VK_NUMPAD6 数字小键盘上的6键
VK_NUMPAD7 数字小键盘上的7键
VK_NUMPAD8 数字小键盘上的8键
VK_NUMPAD9 数字小键盘上的9键
VK_MULTIPLY Multiply键(小键盘*键)
VK_ADD Add键
VK_SEPARATOR Separator键
VK_SUBTRACT Subtract键
VK_DECIMAL Decimal键(小键盘.键)
VK_DIVIDE Divide键(小键盘/键)
VK_F1 F1键
VK_F2 F2键
VK_F3 F3键
VK_F4 F4键
VK_F5 F5键
VK_F6 F6键
VK_F7 F7键
VK_F8 F8键
VK_F9 F9键
VK_F10 F10键
VK_F11 F11键
VK_F12 F12键
VK_F13 F13键
VK_F14 F14键
VK_F15 F15键
VK_F16 F16键
VK_F17 F17键
VK_F18 F18键
VK_F19 F19键
VK_F20 F20键
VK_F21 F21键
VK_F22 F22键
VK_F23 F23键
VK_F24 F24键
VK_NUMLOCK NUMLOCK键
VK_SCROLL SCROLLLOCK键
VK_ATTN Attn键
VK_CRSEL CrSel键
VK_EXSEL ExSel键
VK_EREOF EraseEOF键
VK_PLAY Play键
VK_ZOOM Zoom键
VK_OEM_CLEAR Clear键
参考:
Q:CTRL+V在PreTranslateMessage()中如何取得?
A:if(pMsg->message==WM_KEYDOWN&&pMsg->wParam=='V'&&GetKeyState(VK_CONTROL)&0x80)
PAGEUP:VK_PRIOR
PAGEDOWN:VK_NEXTPreTranslateMessage中可以拦截组合键
if(pMsg->message==WM_KEYDOWN)
{
if(::GetKeyState(VK_CONTROL)<0)//如果是Shift+X这里,改成VK_SHIFT
{//组合键不能区分按键的大小写,
keymsg=pMsg->wParam;//GetKeyState只能用WM_KEYDOWN中
strKey.Format("按下Ctrl+%c",keymsg);
}
响应Ctrl+X键
BOOLCMydilog::PreTranslateMessage(MSG*pMsg)
{
//TODO:Addyourspecializedcodehereand/orcallthebaseclass
if(pMsg->message==WM_KEYDOWN)
{
switch(pMsg->wParam)
{
caseVK_ESCAPE:
SetFocus();
returnTRUE;
case'X':
if(::GetKeyState(VK_CONTROL)<0)//如果是Shift+X这里就
//改成VK_SHIFT
MessageBox("hello");
returnTRUE;
}
}
returnCDialog::PreTranslateMessage(pMsg);
}