getKeyboardLayout 函数 (winuser.h)

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

语法

HKL GetKeyboardLayout(
  [in] DWORD idThread
);

参数

[in] idThread

类型:DWORD

要查询的线程的标识符,对于当前线程,为 0。

返回值

类型: HKL

返回值是线程的输入区域设置标识符。 低字包含输入 语言的语言标识符 ,高字包含键盘物理布局的设备句柄。

注解

输入区域设置标识符是比键盘布局更广泛的概念,因为它还可以包含语音转文本转换器、输入法编辑器 (输入法) 或任何其他输入形式。

由于键盘布局可以动态更改,因此缓存有关当前键盘布局的信息的应用程序应处理 WM_INPUTLANGCHANGE 消息,以通知输入语言的更改。

若要获取当前活动 HKL 的 KLID (键盘布局 ID) ,请调用 GetKeyboardLayoutName

从Windows 8开始:检索与当前键盘布局或输入方法关联的语言的首选方法是调用 Windows.Globalization.Language.CurrentInputMethodLanguageTag。 如果你的应用将语言标记从 CurrentInputMethodLanguageTag 传递给任何 国家语言支持 函数,它必须首先通过调用 ResolveLocaleName 来转换标记。

要求

要求
最低受支持的客户端 Windows 2000 Professional [仅限桌面应用]
最低受支持的服务器 Windows 2000 Server [仅限桌面应用]
目标平台 Windows
标头 winuser.h (包括 Windows.h)
Library User32.lib
DLL User32.dll

另请参阅

ActivateKeyboardLayout

概念性

CreateThread

键盘输入

LoadKeyboardLayout

其他资源

引用

WM_INPUTLANGCHANGE