Функция GetKeyboardLayout (winuser.h)
Извлекает идентификатор активного языкового стандарта ввода (прежнее название — раскладка клавиатуры).
Синтаксис
HKL GetKeyboardLayout(
[in] DWORD idThread
);
Параметры
[in] idThread
Тип: DWORD
Идентификатор потока для запроса или 0 для текущего потока.
Возвращаемое значение
Тип: HKL
Возвращаемое значение — это идентификатор входного языкового стандарта для потока. Низкое слово содержит идентификатор языка ввода, а высокое — дескриптор устройства для физической раскладки клавиатуры.
Комментарии
Идентификатор языкового стандарта ввода является более широким понятием, чем раскладка клавиатуры, так как он также может охватывать преобразователь речи в текст, метод ввода Редактор (IME) или любую другую форму ввода.
Так как раскладку клавиатуры можно динамически изменять, приложения, которые кэшируют сведения о текущей раскладке клавиатуры, должны обрабатывать сообщение WM_INPUTLANGCHANGE , чтобы получать сведения об изменениях в языке ввода.
Чтобы получить KLID (идентификатор раскладки клавиатуры) текущего активного HKL, вызовите GetKeyboardLayoutName.
Начиная с Windows 8. Предпочтительным методом для получения языка, связанного с текущей раскладкой клавиатуры или методом ввода, является вызов Windows.Globalization.Language.CurrentInputMethodLanguageTag. Если приложение передает языковые теги из CurrentInputMethodLanguageTag в любые функции поддержки национальных языков , оно должно сначала преобразовать теги, вызвав ResolveLocaleName.
Требования
Требование | Значение |
---|---|
Минимальная версия клиента | Windows 2000 Professional [только классические приложения] |
Минимальная версия сервера | Windows 2000 Server [только классические приложения] |
Целевая платформа | Windows |
Header | winuser.h (включая Windows.h) |
Библиотека | User32.lib |
DLL | User32.dll |
См. также раздел
Основные понятия
Другие ресурсы
Справочные материалы