键盘和鼠标输入

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

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

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

枚举

 
TOOLTIP_DISMISS_FLAGS

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

函数

 
_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 到 0x0FF 映射到 OEM 扫描代码和偏移状态。 该函数提供的信息允许程序通过模拟键盘输入将 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

包含有关由键盘或鼠标以外的输入设备生成的模拟消息的信息。
INPUT

由 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 函数用来跟踪在指定的时间范围内,鼠标指针何时离开窗口或鼠标悬停在窗口上。