Функция ActivateKeyboardLayout (winuser.h)
Задает идентификатор входного языкового стандарта (прежнее название — дескриптор раскладки клавиатуры) для вызывающего потока или текущего процесса. Идентификатор входного языкового стандарта указывает языковой стандарт, а также физический макет клавиатуры.
Синтаксис
HKL ActivateKeyboardLayout(
[in] HKL hkl,
[in] UINT Flags
);
Параметры
[in] hkl
Тип: HKL
Входной идентификатор языкового стандарта для активации.
Идентификатор входного языкового стандарта должен быть загружен предыдущим вызовом функции LoadKeyboardLayout . Этот параметр должен быть дескриптором раскладки клавиатуры или одним из следующих значений.
[in] Flags
Тип: UINT
Указывает способ активации идентификатора входного языкового стандарта. Этот параметр может принимать одно из указанных ниже значений.
Значение | Значение |
---|---|
|
Если этот бит задан, циклический список системных идентификаторов загруженных языковых стандартов переупорядочен путем перемещения идентификатора языкового стандарта в начало списка. Если этот бит не задан, список поворачивается без изменения порядка.
Например, если у пользователя активный идентификатор языкового стандарта на английском языке, а также загружены идентификаторы языкового стандарта на французском, немецком и испанском языках (в таком порядке), то активация идентификатора немецкого языкового стандарта с помощью набора битов KLF_REORDER приведет к следующему порядку: немецкий, английский, французский, испанский. Активация идентификатора немецкого языкового стандарта без KLF_REORDER битового набора приведет к следующему порядку: немецкий, испанский, английский, французский. Если загружено менее трех идентификаторов языкового стандарта, значение этого флага не имеет значения. |
|
Если задано , но KLF_SHIFTLOCK не задано, состояние CAPS LOCK отключается путем повторного нажатия клавиши CAPS LOCK. Если также задано значение set и KLF_SHIFTLOCK , состояние CAPS LOCK отключается нажатием любой из клавиш SHIFT.
Эти два метода являются взаимоисключающими, и параметр сохраняется как часть профиля пользователя в реестре. |
|
Активирует указанный идентификатор языкового стандарта для всего процесса и отправляет сообщение WM_INPUTLANGCHANGE в фокус или активное окно текущего потока. |
|
Используется с KLF_RESET. Пояснения см . в разделе KLF_RESET . |
|
Этот флаг не поддерживается. Вместо этого используйте функцию UnloadKeyboardLayout . |
Возвращаемое значение
Тип: HKL
Возвращаемое значение имеет тип HKL. Если функция выполнена успешно, возвращаемое значение является предыдущим идентификатором входного языкового стандарта. В противном случае значение равно нулю.
Чтобы получить расширенные сведения об ошибке, используйте функцию GetLastError .
Комментарии
Эта функция влияет только на макет текущего процесса или потока.
Эта функция не ограничивается раскладками клавиатуры. Параметр hkl фактически является идентификатором входного языкового стандарта. Это более широкое понятие, чем раскладка клавиатуры, так как она также может охватывать преобразователь преобразования речи в текст, редактор метода ввода (IME) или любую другую форму ввода. Несколько входных идентификаторов языкового стандарта можно загрузить в любой момент времени, но за раз активен только один. Загрузка нескольких идентификаторов входных языковых стандартов позволяет быстро переключаться между ними.
Если для каждого языкового стандарта разрешено несколько IME, передача входного идентификатора языкового стандарта, в котором высокое слово (дескриптор устройства) равно нулю, активирует первый IME в списке, относящемся к языковому стандарту.
Флаги KLF_RESET и KLF_SHIFTLOCK изменяют метод, с помощью которого отключается состояние CAPS LOCK. По умолчанию состояние CAPS LOCK отключается путем повторного нажатия клавиши CAPS LOCK. Если задано только KLF_RESET , состояние по умолчанию будет восстановлено. Если заданы KLF_RESET и KLF_SHIFTLOCK , состояние CAPS LOCK отключается нажатием клавиши CAPS LOCK. Эта функция используется для соответствия локальным стандартам поведения клавиатуры, а также для личных предпочтений.
Требования
Минимальная версия клиента | Windows 2000 Professional [только классические приложения] |
Минимальная версия сервера | Windows 2000 Server [только классические приложения] |
Целевая платформа | Windows |
Header | winuser.h (включая Windows.h) |
Библиотека | User32.lib |
DLL | User32.dll |
См. также раздел
Основные понятия
Справочные материалы