键盘和鼠标输入

键盘和鼠标输入技术的概述。

键盘和鼠标输入技术与任何标头无关。

有关此技术的编程指南,请参阅:

枚举

 
TOOLTIP_DISMISS_FLAGS

TOOLTIP_DISMISS_FLAGS枚举定义常量,该常量指示是注册窗口还是未注册以接收工具提示消除通知。

Functions

 
_TrackMouseEvent

当鼠标指针离开窗口或将鼠标悬停在窗口上以指定时间量时发布消息。 此函数在存在时调用 TrackMouseEvent,否则将模拟它。
ActivateKeyboardLayout

设置调用线程或当前进程的输入区域设置标识符(以前称为键盘布局句柄)。 输入区域设置标识符指定区域设置和键盘的物理布局。
BlockInput

阻止键盘和鼠标输入事件到达应用程序。
DefRawInputProc

验证 RAWINPUTHEADER 结构的大小是否正确。
DragDetect

捕获鼠标并跟踪其移动,直到用户释放左按钮,按 ESC 键,或将鼠标移到拖动矩形周围的指定点周围。
EnableWindow

启用或禁用对指定窗口或控件的鼠标和键盘输入。 禁用输入后,窗口不会收到鼠标单击和按键等输入。 启用输入后,窗口将接收所有输入。
GET_APPCOMMAND_LPARAM

从指定的 LPARAM 值检索应用程序命令。
GET_DEVICE_LPARAM

从指定的 LPARAM 值检索输入设备类型。
GET_FLAGS_LPARAM

从指定的 LPARAM 值检索某些虚拟密钥的状态。 (GET_FLAGS_LPARAM)
GET_KEYSTATE_LPARAM

从指定的 LPARAM 值检索某些虚拟密钥的状态。 (GET_KEYSTATE_LPARAM)
GET_KEYSTATE_WPARAM

从指定的 WPARAM 值检索某些虚拟密钥的状态。
GET_NCHITTEST_WPARAM

从指定的 WPARAM 值检索命中测试值。
GET_RAWINPUT_CODE_WPARAM

从 WM_INPUT 中的 wParam 检索输入代码。
GET_WHEEL_DELTA_WPARAM

从指定的 WPARAM 值中检索 wheel-delta 值。
GET_XBUTTON_WPARAM

从指定的 WPARAM 值检索某些按钮的状态。
GetActiveWindow

检索附加到调用线程消息队列的活动窗口的窗口句柄。
GetAsyncKeyState

确定调用函数时键是向上还是向下键,以及前一次调用 GetAsyncKeyState 后是否按下了键。
GetCapture

检索已捕获鼠标的窗口的句柄(如果有)。 一次只能捕获一个窗口;此窗口接收鼠标输入,无论光标是否在其边框内。
GetDoubleClickTime

检索鼠标的当前双击时间。
GetFocus

如果窗口附加到调用线程的消息队列,则检索具有键盘焦点的窗口的句柄。
GetKBCodePage

检索当前代码页。
GetKeyboardLayout

检索活动输入区域设置标识符(以前称为键盘布局)。
GetKeyboardLayoutList

检索与系统中当前输入区域设置集对应的输入区域设置标识符(以前称为键盘布局句柄)。 该函数将标识符复制到指定的缓冲区。
GetKeyboardLayoutNameA

检索调用线程的活动输入区域设置标识符(以前称为键盘布局)的名称。 (ANSI)
GetKeyboardLayoutNameW

检索调用线程的活动输入区域设置标识符(以前称为键盘布局)的名称。 (Unicode)
GetKeyboardState

将 256 个虚拟密钥的状态复制到指定的缓冲区。
GetKeyboardType

检索有关当前键盘的信息。
GetKeyNameTextA

检索表示键名称的字符串。 (ANSI)
GetKeyNameTextW

检索表示键名称的字符串。 (Unicode)
GetKeyState

检索指定虚拟密钥的状态。 状态指定每次按下键时,键是向上、向下还是切换(打开、关闭)。
GetLastInputInfo

检索最后一个输入事件的时间。
GetMouseMovePointsEx

检索最多 64 个之前鼠标或笔坐标的历史记录。
GetRawInputBuffer

执行原始输入数据的缓冲读取。
GetRawInputData

从指定设备检索原始输入。
GetRawInputDeviceInfoA

检索有关原始输入设备的信息。 (ANSI)
GetRawInputDeviceInfoW

检索有关原始输入设备的信息。 (Unicode)
GetRawInputDeviceList

枚举附加到系统的原始输入设备。
GetRegisteredRawInputDevices

检索有关当前应用程序的原始输入设备的信息。
IsWindowEnabled

确定是否为鼠标和键盘输入启用了指定的窗口。
keybd_event

合成击键。
LoadKeyboardLayoutA

将新的输入区域设置标识符(以前称为键盘布局)加载到系统中。 (ANSI)
LoadKeyboardLayoutW

将新的输入区域设置标识符(以前称为键盘布局)加载到系统中。 (Unicode)
MapVirtualKeyA

将虚拟密钥代码转换为扫描代码或字符值,或将扫描代码转换为虚拟密钥代码。 (ANSI)
MapVirtualKeyExA

将虚拟密钥代码转换为扫描代码或字符值,或将扫描代码转换为虚拟密钥代码。 该函数使用输入语言和输入区域设置标识符翻译代码。 (ANSI)
MapVirtualKeyExW

将虚拟密钥代码转换为扫描代码或字符值,或将扫描代码转换为虚拟密钥代码。 该函数使用输入语言和输入区域设置标识符翻译代码。 (Unicode)
MapVirtualKeyW

将虚拟密钥代码转换为扫描代码或字符值,或将扫描代码转换为虚拟密钥代码。 (Unicode)
mouse_event

mouse_event函数合成鼠标运动和按钮单击。
NEXTRAWINPUTBLOCK

检索 RAWINPUT 结构数组中下一个结构的位置。
OemKeyScan

将 OEMASCII 代码 0 映射到 OEM 扫描代码和转移状态0x0FF。 该函数提供的信息允许程序通过模拟键盘输入将 OEM 文本发送到另一个程序。
RegisterForTooltipDismissNotification

允许应用或 UI 框架注册和注销窗口,以接收通知以消除其工具提示窗口。
RegisterHotKey

定义系统范围的热键。
RegisterRawInputDevices

注册提供原始输入数据的设备。
ReleaseCapture

从当前线程中的窗口释放鼠标捕获并还原正常的鼠标输入处理。
SendInput

合成击键、鼠标动作和按钮单击。
SetActiveWindow

激活窗口。 窗口必须附加到调用线程的消息队列。
SetCapture

将鼠标捕获设置为属于当前线程的指定窗口。
SetDoubleClickTime

设置鼠标的双击时间。
SetFocus

将键盘焦点设置为指定的窗口。 窗口必须附加到调用线程的消息队列。
SetKeyboardState

将键盘键状态数组复制到调用线程的键盘输入状态表中。 这是 GetKeyboardState 和 GetKeyState 函数访问的同一个表。 对此表所做的更改不会影响任何其他线程的键盘输入。
SwapMouseButton

反转或还原左右鼠标按钮的含义。
ToAscii

将指定的虚拟键代码和键盘状态转换为相应的字符或字符。
ToAsciiEx

将指定的虚拟键代码和键盘状态转换为相应的字符或字符。 该函数使用输入语言和由输入区域设置标识符标识的物理键盘布局来翻译代码。
ToUnicode

将指定的虚拟键代码和键盘状态转换为相应的 Unicode 字符或字符。 (ToUnicode)
ToUnicodeEx

将指定的虚拟键代码和键盘状态转换为相应的 Unicode 字符或字符。 (ToUnicodeEx)
TrackMouseEvent

当鼠标指针离开窗口或将鼠标悬停在窗口上以指定时间量时发布消息。
UnloadKeyboardLayout

卸载输入区域设置标识符(以前称为键盘布局)。
UnregisterHotKey

释放以前由调用线程注册的热键。
VkKeyScanA

将字符转换为当前键盘的相应虚拟键代码和移位状态。 (ANSI)
VkKeyScanExA

将字符转换为相应的虚拟键代码和移位状态。 该函数使用输入语言和由输入区域设置标识符标识的物理键盘布局来翻译字符。 (ANSI)
VkKeyScanExW

将字符转换为相应的虚拟键代码和移位状态。 该函数使用输入语言和由输入区域设置标识符标识的物理键盘布局来翻译字符。 (Unicode)
VkKeyScanW

将字符转换为当前键盘的相应虚拟键代码和移位状态。 (Unicode)

结构

 
HARDWAREINPUT

包含有关输入设备(键盘或鼠标)生成的模拟消息的信息。
输入

SendInput 用于存储用于合成输入事件的信息,例如击键、鼠标移动和鼠标单击。
KEYBDINPUT

包含有关模拟键盘事件的信息。
LASTINPUTINFO

包含最后一个输入的时间。
MOUSEINPUT

包含有关模拟鼠标事件的信息。
MOUSEMOVEPOINT

包含有关鼠标在屏幕坐标中的位置的信息。
RAWHID

描述人类接口设备(HID)中原始输入的格式。
RAWINPUT

包含设备的原始输入。
RAWINPUTDEVICE

定义原始输入设备的信息。
RAWINPUTDEVICELIST

包含有关原始输入设备的信息。
RAWINPUTHEADER

包含原始输入数据的一部分的标头信息。
RAWKEYBOARD

包含有关键盘状态的信息。
RAWMOUSE

包含有关鼠标状态的信息。
RID_DEVICE_INFO

定义来自任何设备的原始输入数据。
RID_DEVICE_INFO_HID

定义来自指定人机接口设备(HID)的原始输入数据。
RID_DEVICE_INFO_KEYBOARD

定义来自指定键盘的原始输入数据。
RID_DEVICE_INFO_MOUSE

定义来自指定鼠标的原始输入数据。
TRACKMOUSEEVENT

由 TrackMouseEvent 函数用来跟踪鼠标指针何时离开窗口或将鼠标悬停在窗口上指定时间。