使用快捷键弹出新对话框

第一、快捷键

  1、响应按键消息:使用PreTranslateMessage,mfc处理消息之前,通常在这里做处理。该函数使用时要从CWin的虚函数PreTranslateMessage中重载。

  2、按键,好吧,就在下面;

后面括号的是对应的ASCII码

ESC键 VK_ESCAPE (27) 
回车键: VK_RETURN (13) 
TAB键: VK_TAB (9) 
Caps Lock键: VK_CAPITAL (20) 
Shift键: VK_SHIFT ($10) 
Ctrl键: VK_CONTROL (17) 
Alt键: VK_MENU (18) 
空格键: VK_SPACE ($20/32) 
退格键: VK_BACK (8) 
左徽标键: VK_LWIN (91) 
右徽标键: VK_LWIN (92) 
鼠标右键快捷键:VK_APPS (93)

Insert键: VK_INSERT (45) 
Home键: VK_HOME (36) 
Page Up: VK_PRIOR (33) 
PageDown: VK_NEXT (34) 
End键: VK_END (35) 
Delete键: VK_DELETE (46)

方向键(←): VK_LEFT (37) 
方向键(↑): VK_UP (38) 
方向键(→): VK_RIGHT (39) 
方向键(↓): VK_DOWN (40)


F1键: VK_F1 (112) 
F2键: VK_F2 (113) 
F3键: VK_F3 (114) 
F4键: VK_F4 (115) 
F5键: VK_F5 (116) 
F6键: VK_F6 (117) 
F7键: VK_F7 (118) 
F8键: VK_F8 (119) 
F9键: VK_F9 (120) 
F10键: VK_F10 (121) 
F11键: VK_F11 (122) 
F12键: VK_F12 (123)


Num Lock键: VK_NUMLOCK (144) 
小键盘0: VK_NUMPAD0 (96) 
小键盘1: VK_NUMPAD0 (97) 
小键盘2: VK_NUMPAD0 (98) 
小键盘3: VK_NUMPAD0 (99) 
小键盘4: VK_NUMPAD0 (100) 
小键盘5: VK_NUMPAD0 (101) 
小键盘6: VK_NUMPAD0 (102) 
小键盘7: VK_NUMPAD0 (103) 
小键盘8: VK_NUMPAD0 (104) 
小键盘9: VK_NUMPAD0 (105) 
小键盘.: VK_DECIMAL (110) 
小键盘*: VK_MULTIPLY (106) 
小键盘+: VK_MULTIPLY (107) 
小键盘-: VK_SUBTRACT (109) 
小键盘/: VK_DIVIDE (111)

二、显示对话框,这就简单了

if (WM_KEYDOWN == pMsg->message)

 {

  if (VK_F4 == pMsg->wParam)

    { TestNewDialog *pnewDialog = new TestNewDialog();

    BOOL bRet = pnewDialog->Create(TestNewDialog::IDD, this);

    if (!bRet)

    {   AfxMessageBox(_T("create failed"));    }

    pnewDialog->ShowWindow(SW_SHOW);

    CDC *pCdc = pnewDialog->GetDC(); }

}

原文地址:https://www.cnblogs.com/flysnail/p/2044372.html