vc里的虚拟按键是做什么用的

vc里的虚拟按键是做什么用的,第1张

虚拟按键的总结 符号常量 十六进制值 指定的鼠标或键盘按键 VK_LBUTTON 01 鼠标左键 VK_RBUTTON 02 鼠标右键 VK_CANCEL 03 Control-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 ALT 键 VK_PAUSE 13 PAUSE 键 VK_CAPITAL 14 CAPS LOCK 键 VK_ESCAPE 1B ESC 键 VK_SPACE 20 SPACEBAR VK_PRIOR 21 PAGE UP 键 VK_NEXT 22 PAGE DOWN 键 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 PRINT SCREEN键(用于Windows 30及以后版本) VK_INSERT 2D INS 键 VK_DELETE 2E DEL 键 VK_HELP 2F HELP键 ///////////////////// 对于非小键盘上的数字键和字母键,直接在单引号中加入该键就行 比如: a 键: 'A' 1键: '1' ////////////////////////////// /// VK_LWIN 5B Left Windows 键 (Microsoft自然键盘) VK_RWIN 5C Right Windows 键 (Microsoft自然键盘) VK_APPS 5D Applications 键 (Microsoft自然键盘) VK_NUMPAD0 60 数字小键盘上的 0 键 VK_NUMPAD1 61 数字小键盘上的 1 键 VK_NUMPAD2 62 数字小键盘上的 2 键 VK_NUMPAD3 63 数字小键盘上的 3 键 VK_NUMPAD4 64 数字小键盘上的 4 键 VK_NUMPAD5 65 数字小键盘上的 5 键 VK_NUMPAD6 66 数字小键盘上的 6 键 VK_NUMPAD7 67 数字小键盘上的 7 键 VK_NUMPAD8 68 数字小键盘上的 8 键 VK_NUMPAD9 69 数字小键盘上的 9 键 VK_MULTIPLY 6A Multiply 键 VK_ADD 6B Add键 VK_SEPARATOR 6C Separator 键 VK_SUBTRACT 6D Subtract 键 VK_DECIMAL 6E Decimal 键 VK_DIVIDE 6F Divide 键 VK_F1 70 F1 键 VK_F2 71 F2 键 VK_F3 72 F3 键 VK_F4 73 F4 键 VK_F5 74 F5 键 VK_F6 75 F6 键 VK_F7 76 F7 键 VK_F8 77 F8 键 VK_F9 78 F9 键 VK_F10 79 F10 键 VK_F11 7A F11 键 VK_F12 7B F12 键 VK_F13 7C F13 键 VK_F14 7D F14 键 VK_F15 7E F15 键 VK_F16 7F F16 键 VK_F17 80H F17 键 VK_F18 81H F18 键 VK_F19 82H F19 键 VK_F20 83H F20 键 VK_F21 84H F21 键 VK_F22 85H F22 键 VK_F23 86H F23 键 VK_F24 87H F24 键 VK_NUMLOCK 90 NUM LOCK 键 VK_SCROLL 91 SCROLL LOCK 键 VK_ATTN F6 Attn 键 VK_CRSEL F7 CrSel 键 VK_EXSEL F8 ExSel 键 VK_EREOF F9 Erase EOF 键 VK_PLAY FA Play 键 VK_ZOOM FB Zoom 键 VK_OEM_CLEAR FE Clear 键 举例说明这些键的用法: (一)响应单独的按键: 先添加PreTranslateMessage()(响应WM_ CHAR)也是同样的效果,因为本例只捕捉键盘) BOOL CMydilog::PreTranslateMessage( MSG pMsg) { if (pMsg->message == WM_KEYDOWN) { if(pMsg->wParam=='M')// 直接用上面的虚码代替就可以响应所指键 MessageBox("hello");// 如果按下M键d出消息 } return CDialog::PreTranslateMessage( pMsg); } (二)组合键的用法:(本例响应Ctrl+X键) BOOL CMydilog::PreTranslateMessage( MSG pMsg) { if (pMsg->message == WM_KEYDOWN) { switch (pMsg->wParam) { case VK_ESCAPE: SetFocus (); return TRUE; case 'X': if(::GetKeyState(VK_CONTROL) < 0 MessageBox("hello"); return TRUE; } } return CDialog::PreTranslateMessage( pMsg); }

The KEYBDINPUT structure contains information about a simulated

keyboard event

Syntax

typedef struct tagKEYBDINPUT {

WORD wVk;

WORD wScan;

DWORD dwFlags;

DWORD time;

ULONG_PTR dwExtraInfo;

} KEYBDINPUT, PKEYBDINPUT;

Members

wVk

Specifies a virtual-key code The code must be a value in the range 1 to

254 The Winuserh header file provides macro definitions (VK_) for each value

If the dwFlags member

specifies KEYEVENTF_UNICODE, wVk must be 0

wScan

Specifies a hardware scan code for the key If dwFlags specifies KEYEVENTF_UNICODE, wScan specifies a Unicode character

which is to be sent to the foreground application

dwFlags

Specifies various aspects of a keystroke This member can be certain

combinations of the following values

KEYEVENTF_EXTENDEDKEY

If specified, the scan code was preceded by a prefix byte that has the value

0xE0 (224)

KEYEVENTF_KEYUP

If specified, the key is being released If not specified, the key is being

pressed

KEYEVENTF_SCANCODE

If specified, wScan

identifies the key and wVk

is ignored

KEYEVENTF_UNICODE

Windows 2000/XP: If specified, the system synthesizes a VK_PACKET

keystroke The wVk parameter

must be zero This flag can only be combined with the KEYEVENTF_KEYUP flag For

more information, see the Remarks section

time

Time stamp for the event, in milliseconds If this parameter is zero, the

system will provide its own time stamp

dwExtraInfo

Specifies an additional value associated with the keystroke Use the

GetMessageExtraInfo

function to obtain this information

函数说明如上:

INPUT input[2];

memset(input, 0, sizeof(input));

//设置模拟键盘输入

input[0]type =input[1]type= INPUT_KEYBOARD;

input[0]kiwVk= VK_TAB;

input[0]kidwFlags=0;//先按下

// 释放按键

input[1]kidwFlags = KEYEVENTF_KEYUP;//放开

input[1]kiwVk=VK_TAB;

SendInput(1, input, sizeof(INPUT));

Sleep(2000);

SendInput(1, input+1, sizeof(INPUT));

没试过,你试试。

与编辑界面紧挨着的那行工具栏,就是第三行,靠右边有六个图标工具,功能依次是:编译(compile),连接(build),停止连接(buildstop),运行(buildexecute),Go,标记;

在菜单栏下使用时:编译下拉菜单下的对应英文的菜单项

以上就是关于vc里的虚拟按键是做什么用的全部的内容,包括:vc里的虚拟按键是做什么用的、VC++如何模拟键盘Tab按键(用SendInput方法)、刚用VC++6.0还不会用,请问哪个按键是运行功能的啊等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/zz/9624419.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-04-30
下一篇2023-04-30

发表评论

登录后才能评论

评论列表(0条)

    保存