Compartir a través de


Función ActivateKeyboardLayout (winuser.h)

Establece el identificador de la configuración regional de entrada (antes denominado identificador de distribución del teclado) para el subproceso de llamada o el proceso actual. El identificador de la configuración regional de entrada especifica una configuración regional y la distribución física del teclado.

Sintaxis

HKL ActivateKeyboardLayout(
  [in] HKL  hkl,
  [in] UINT Flags
);

Parámetros

[in] hkl

Tipo: HKL

Identificador de configuración regional de entrada que se va a activar.

El identificador de configuración regional de entrada debe haberse cargado mediante una llamada anterior a la función LoadKeyboardLayout . Este parámetro debe ser el identificador de un diseño de teclado o uno de los valores siguientes.

Valor Significado
HKL_NEXT
1
Selecciona el siguiente identificador de configuración regional en la lista circular de identificadores de configuración regional cargados mantenidos por el sistema.
HKL_PREV
0
Selecciona el identificador de configuración regional anterior en la lista circular de identificadores de configuración regional cargados mantenidos por el sistema.

[in] Flags

Tipo: UINT

Especifica cómo se va a activar el identificador de configuración regional de entrada. Este parámetro puede ser uno de los valores siguientes.

Valor Significado
KLF_REORDER
0x00000008
Si se establece este bit, la lista circular del sistema de identificadores de configuración regional cargados se reordena moviendo el identificador de configuración regional al encabezado de la lista. Si no se establece este bit, la lista se gira sin un cambio de orden.

Por ejemplo, si un usuario tenía un identificador de configuración regional en inglés activo, así como tener los identificadores de configuración regional francés, alemán y español cargados (en ese orden), la activación del identificador de configuración regional alemán con el conjunto de bits de KLF_REORDER produciría el siguiente orden: alemán, inglés, francés, español. La activación del identificador de configuración regional alemán sin el conjunto de bits de KLF_REORDER produciría el siguiente orden: alemán, español, inglés, francés.

Si se cargan menos de tres identificadores de configuración regional, el valor de esta marca es irrelevante.

KLF_RESET
0x40000000
Si se establece pero KLF_SHIFTLOCK no se establece, el estado Bloqueo de mayúsculas se desactiva presionando la tecla Bloquear mayúsculas de nuevo. Si se establece y KLF_SHIFTLOCK también se establece, el estado Bloqueo de mayúsculas se desactiva presionando cualquiera de las teclas MAYÚS.

Estos dos métodos son mutuamente excluyentes y la configuración persiste como parte del perfil del usuario en el Registro.

KLF_SETFORPROCESS
0x00000100
Activa el identificador de configuración regional especificado para todo el proceso y envía el mensaje WM_INPUTLANGCHANGE al foco o a la ventana activa del subproceso actual.
KLF_SHIFTLOCK
0x00010000
Se usa con KLF_RESET. Consulte KLF_RESET para obtener una explicación.
KLF_UNLOADPREVIOUS
Esta marca no es compatible. En su lugar, use la función UnloadKeyboardLayout .

Valor devuelto

Tipo: HKL

El valor devuelto es de tipo HKL. Si la función se realiza correctamente, el valor devuelto es el identificador de configuración regional de entrada anterior. De lo contrario, es cero.

Para obtener información de error extendida, use la función GetLastError .

Comentarios

Esta función solo afecta al diseño del proceso o subproceso actual.

Esta función no está restringida a los diseños de teclado. El parámetro hkl es realmente un identificador de configuración regional de entrada. Se trata de un concepto más amplio que un diseño de teclado, ya que también puede abarcar un convertidor de voz a texto, un Editor de métodos de entrada (IME) o cualquier otra forma de entrada. Se pueden cargar varios identificadores de configuración regional de entrada en cualquier momento, pero solo uno está activo a la vez. La carga de varios identificadores de configuración regional de entrada permite cambiar rápidamente entre ellos.

Cuando se permiten varias MIE para cada configuración regional, al pasar un identificador de configuración regional de entrada en el que la palabra alta (el identificador del dispositivo) es cero activa el primer IME de la lista que pertenece a la configuración regional.

Las marcas KLF_RESET y KLF_SHIFTLOCK modifican el método por el que se desactiva el estado Bloqueo de mayúsculas. De forma predeterminada, el estado Bloqueo de mayúsculas está desactivado presionando la tecla Bloquear mayúsculas de nuevo. Si solo se establece KLF_RESET , se restablece el estado predeterminado. Si se establecen KLF_RESET y KLF_SHIFTLOCK , el estado Bloqueo de mayúsculas se desactiva presionando la tecla Bloquear mayúsculas. Esta característica se usa para cumplir los estándares de comportamiento del teclado local, así como para las preferencias personales.

Requisitos

   
Cliente mínimo compatible Windows 2000 Professional [solo aplicaciones de escritorio]
Servidor mínimo compatible Windows 2000 Server [solo aplicaciones de escritorio]
Plataforma de destino Windows
Encabezado winuser.h (incluir Windows.h)
Library User32.lib
Archivo DLL User32.dll

Consulte también

Conceptual

GetKeyboardLayoutName

Entrada de teclado

LoadKeyboardLayout

Referencia

UnloadKeyboardLayout