Función MapVirtualKeyA (winuser.h)
Convierte (asigna) un código de clave virtual en un valor de carácter o código de examen, o convierte un código de examen en un código de clave virtual.
Sintaxis
UINT MapVirtualKeyA(
[in] UINT uCode,
[in] UINT uMapType
);
Parámetros
[in] uCode
Tipo: UINT
El código de clave virtual o examina el código de una clave. El modo en que se interpreta este valor depende del valor del parámetro uMapType.
[in] uMapType
Tipo: UINT
Traducción que se va a realizar. El valor de este parámetro depende del valor del parámetro uCode.
Valor | Significado |
---|---|
MAPVK_VK_TO_VSC 0 |
El parámetro uCode es un código de clave virtual y se traduce en un código de examen. Si es un código de clave virtual que no distingue entre las teclas izquierda y derecha, se devuelve el código de examen izquierdo. Si no hay ninguna traducción, la función devuelve 0. |
MAPVK_VSC_TO_VK 1 |
El parámetro uCode es un código de examen y se traduce en un código de clave virtual que no distingue entre las teclas izquierda y derecha. Si no hay ninguna traducción, la función devuelve 0. Windows Vista y versiones posteriores: el byte alto del uCode valor puede contener 0xe0 o 0xe1 para especificar el código de examen extendido. |
MAPVK_VK_TO_CHAR 2 |
El parámetro uCode es un código de clave virtual y se traduce en un valor de carácter sin desplazamiento en la palabra de orden bajo del valor devuelto. Las claves inactivas (diacríticos) se indican estableciendo el bit superior del valor devuelto. Si no hay ninguna traducción, la función devuelve 0. Vea comentarios. |
MAPVK_VSC_TO_VK_EX 3 |
El parámetro uCode es un código de examen y se traduce en un código de clave virtual que distingue entre las claves izquierda y derecha. Si no hay ninguna traducción, la función devuelve 0. Windows Vista y versiones posteriores: el byte alto del uCode valor puede contener 0xe0 o 0xe1 para especificar el código de examen extendido. |
MAPVK_VK_TO_VSC_EX 4 |
Windows Vista y versiones posteriores: El parámetro uCode es un código de clave virtual y se traduce en un código de examen. Si es un código de clave virtual que no distingue entre las teclas izquierda y derecha, se devuelve el código de examen izquierdo. Si el código de examen es un código de examen extendido, el byte alto del valor devuelto contendrá 0xe0 o 0xe1 para especificar el código de examen extendido. Si no hay ninguna traducción, la función devuelve 0. |
Valor devuelto
Tipo: UINT
El valor devuelto es un código de examen, un código de clave virtual o un valor de carácter, según el valor de uCode y uMapType. Si no hay ninguna traducción, el valor devuelto es cero.
Observaciones
Para especificar un identificador para el diseño del teclado que se va a usar para traducir el código especificado, use la función mapVirtualKeyEx
Una aplicación puede usar MapVirtualKey para traducir códigos de examen a las constantes de código de clave virtual VK_SHIFT, VK_CONTROLy VK_MENU, y viceversa. Estas traducciones no distinguen entre las instancias izquierda y derecha de las teclas MAYÚS, CTRL o ALT.
Una aplicación puede obtener el código de examen correspondiente a la instancia izquierda o derecha de una de estas claves llamando a MapVirtualKey con uCode establecer en una de las siguientes constantes de código de clave virtual:
- VK_LSHIFT
- VK_RSHIFT
- VK_LCONTROL
- VK_RCONTROL
- VK_LMENU
- VK_RMENU
Estas constantes de distinción izquierda y derecha solo están disponibles para una aplicación a través de las GetKeyboardState, SetKeyboardState, GetAsyncKeyState, GetKeyState, MapVirtualKeyy funciones MapVirtualKeyEx. Para obtener una tabla completa de códigos de clave virtual, consulte Códigos de clave virtual.
En el modo MAPVK_VK_TO_CHARcódigos de clave virtual, "A". Las claves Z' se traducen a mayúsculas "A". Caracteres Z, independientemente del diseño actual del teclado. Si desea traducir un código de clave virtual al carácter correspondiente, use la función ToAscii.
Nota
El encabezado winuser.h define MapVirtualKey como alias que selecciona automáticamente la versión ANSI o Unicode de esta función en función de la definición de la constante de preprocesador UNICODE. La combinación del uso del alias neutral de codificación con código que no es neutral de codificación puede dar lugar a errores de coincidencia que dan lugar a errores de compilación o tiempo de ejecución. Para obtener más información, vea Conventions for Function Prototypes.
Requisitos
Requisito | Valor |
---|---|
cliente mínimo admitido | Windows 2000 Professional [solo aplicaciones de escritorio] |
servidor mínimo admitido | Windows 2000 Server [solo aplicaciones de escritorio] |
de la plataforma de destino de |
Windows |
encabezado de |
winuser.h (incluya Windows.h) |
biblioteca de |
User32.lib |
DLL de |
User32.dll |
Consulte también
- GetAsyncKeyState
- GetKeyState
- GetKeyboardState
- GetSystemMetrics
- MapVirtualKey
- SetKeyboardState
- entrada de teclado
- introducción a la entrada del teclado