Esta documentación está archivada y no tiene mantenimiento.

Keys (Enumeración)

Especifica los modificadores y códigos de tecla.

La enumeración tiene un atributo FlagsAttribute que permite una combinación bit a bit de los valores de miembro.

Espacio de nombres: System.Windows.Forms
Ensamblado: System.Windows.Forms (en system.windows.forms.dll)

[TypeConverterAttribute(typeof(KeysConverter))] 
[FlagsAttribute] 
[ComVisibleAttribute(true)] 
public enum Keys
/** @attribute TypeConverterAttribute(System.Windows.Forms.KeysConverter) */ 
/** @attribute FlagsAttribute() */ 
/** @attribute ComVisibleAttribute(true) */ 
public enum Keys
TypeConverterAttribute(System.Windows.Forms.KeysConverter) 
FlagsAttribute 
ComVisibleAttribute(true) 
public enum Keys

 Nombre de miembroDescripción
Compatible con .NET Compact FrameworkATecla A. 
Compatible con .NET Compact FrameworkAddTecla agregar. 
Compatible con .NET Compact FrameworkAltTecla modificadora ALT. 
Compatible con .NET Compact FrameworkAppsTecla aplicación (Microsoft Natural Keyboard). 
Compatible con .NET Compact FrameworkAttnTecla ATTN. 
Compatible con .NET Compact FrameworkBTecla B. 
Compatible con .NET Compact FrameworkBackTecla RETROCESO. 
BrowserBackTecla atrás del explorador (Windows 2000 o posterior). 
BrowserFavoritesTecla favoritos del explorador (Windows 2000 o posterior). 
BrowserForwardTecla adelante del explorador (Windows 2000 o posterior). 
BrowserHomeTecla inicio del explorador (Windows 2000 o posterior). 
BrowserRefreshTecla actualizar del explorador (Windows 2000 o posterior). 
BrowserSearchTecla búsqueda del explorador (Windows 2000 o posterior). 
BrowserStopTecla detener del explorador (Windows 2000 o posterior). 
Compatible con .NET Compact FrameworkCTecla C. 
Compatible con .NET Compact FrameworkCancelTecla CANCELAR. 
Compatible con .NET Compact FrameworkCapitalTecla BLOQ MAYÚS. 
Compatible con .NET Compact FrameworkCapsLockTecla BLOQ MAYÚS. 
Compatible con .NET Compact FrameworkClearTecla BORRAR. 
Compatible con .NET Compact FrameworkControlTecla modificadora CTRL. 
Compatible con .NET Compact FrameworkControlKeyTecla CTRL. 
Compatible con .NET Compact FrameworkCrselTecla CRSEL. 
Compatible con .NET Compact FrameworkDTecla D. 
Compatible con .NET Compact FrameworkD0Tecla 0. 
Compatible con .NET Compact FrameworkD1Tecla 1. 
Compatible con .NET Compact FrameworkD2Tecla 2. 
Compatible con .NET Compact FrameworkD3Tecla 3. 
Compatible con .NET Compact FrameworkD4Tecla 4. 
Compatible con .NET Compact FrameworkD5Tecla 5. 
Compatible con .NET Compact FrameworkD6Tecla 6. 
Compatible con .NET Compact FrameworkD7Tecla 7. 
Compatible con .NET Compact FrameworkD8Tecla 8. 
Compatible con .NET Compact FrameworkD9Tecla 9. 
Compatible con .NET Compact FrameworkDecimalTecla decimal. 
Compatible con .NET Compact FrameworkDeleteTecla SUPR. 
Compatible con .NET Compact FrameworkDivideTecla división. 
Compatible con .NET Compact FrameworkDownTecla FLECHA ABAJO. 
Compatible con .NET Compact FrameworkETecla E. 
Compatible con .NET Compact FrameworkEndTecla FIN. 
Compatible con .NET Compact FrameworkEnterTecla ENTRAR. 
Compatible con .NET Compact FrameworkEraseEofTecla ERASE EOF. 
Compatible con .NET Compact FrameworkEscapeTecla ESC. 
Compatible con .NET Compact FrameworkExecuteTecla EJECUTAR. 
Compatible con .NET Compact FrameworkExselTecla EXSEL. 
Compatible con .NET Compact FrameworkFTecla F. 
Compatible con .NET Compact FrameworkF1Tecla F1. 
Compatible con .NET Compact FrameworkF10Tecla F10. 
Compatible con .NET Compact FrameworkF11Tecla F11. 
Compatible con .NET Compact FrameworkF12Tecla F12. 
Compatible con .NET Compact FrameworkF13Tecla F13. 
Compatible con .NET Compact FrameworkF14Tecla F14. 
Compatible con .NET Compact FrameworkF15Tecla F15. 
Compatible con .NET Compact FrameworkF16Tecla F16. 
Compatible con .NET Compact FrameworkF17Tecla F17. 
Compatible con .NET Compact FrameworkF18Tecla F18. 
Compatible con .NET Compact FrameworkF19Tecla F19. 
Compatible con .NET Compact FrameworkF2Tecla F2. 
Compatible con .NET Compact FrameworkF20Tecla F20. 
Compatible con .NET Compact FrameworkF21Tecla F21. 
Compatible con .NET Compact FrameworkF22Tecla F22. 
Compatible con .NET Compact FrameworkF23Tecla F23. 
Compatible con .NET Compact FrameworkF24Tecla F24. 
Compatible con .NET Compact FrameworkF3Tecla F3. 
Compatible con .NET Compact FrameworkF4Tecla F4. 
Compatible con .NET Compact FrameworkF5Tecla F5. 
Compatible con .NET Compact FrameworkF6Tecla F6. 
Compatible con .NET Compact FrameworkF7Tecla F7. 
Compatible con .NET Compact FrameworkF8Tecla F8. 
Compatible con .NET Compact FrameworkF9Tecla F9. 
FinalModeTecla de modo final de Editores de métodos de entrada (IME). 
Compatible con .NET Compact FrameworkGTecla G. 
Compatible con .NET Compact FrameworkHTecla H. 
HanguelModeTecla de modo Hanguel de Editores de métodos de entrada (IME) (se mantiene por compatibilidad; use HangulMode).  
HangulModeTecla de modo Hangul de Editores de métodos de entrada (IME). 
HanjaModeTecla de modo Hanja de Editores de métodos de entrada (IME). 
Compatible con .NET Compact FrameworkHelpTecla AYUDA. 
Compatible con .NET Compact FrameworkHomeTecla INICIO. 
Compatible con .NET Compact FrameworkITecla I. 
IMEAcceptTecla aceptar de Editores de métodos de entrada (IME), reemplaza a IMEAceept
IMEAceeptTecla aceptar de Editores de métodos de entrada (IME). Obsoleto, utilice IMEAccept en su lugar. 
IMEConvertTecla convertir de Editores de métodos de entrada (IME). 
IMEModeChangeTecla cambio de modo de Editores de métodos de entrada (IME). 
IMENonconvertTecla no convertir de Editores de métodos de entrada (IME). 
Compatible con .NET Compact FrameworkInsertTecla INSERT. 
Compatible con .NET Compact FrameworkJTecla J. 
JunjaModeTecla de modo Junja de Editores de métodos de entrada (IME). 
Compatible con .NET Compact FrameworkKTecla K. 
KanaModeTecla de modo Kana de Editores de métodos de entrada (IME). 
KanjiModeTecla de modo Kanji de Editores de métodos de entrada (IME). 
Compatible con .NET Compact FrameworkKeyCodeMáscara de bits para extraer un código de tecla de un valor de tecla. 
Compatible con .NET Compact FrameworkLTecla L. 
LaunchApplication1Tecla iniciar aplicación uno (Windows 2000 o posterior). 
LaunchApplication2Tecla iniciar aplicación dos (Windows 2000 o posterior). 
LaunchMailTecla iniciar correo (Windows 2000 o posterior). 
Compatible con .NET Compact FrameworkLButtonBotón primario del mouse. 
Compatible con .NET Compact FrameworkLControlKeyTecla CTRL izquierda. 
Compatible con .NET Compact FrameworkLeftTecla FLECHA IZQUIERDA. 
Compatible con .NET Compact FrameworkLineFeedTecla AVANCE DE LÍNEA. 
Compatible con .NET Compact FrameworkLMenuTecla ALT izquierda. 
Compatible con .NET Compact FrameworkLShiftKeyTecla MAYÚS izquierda. 
Compatible con .NET Compact FrameworkLWinTecla izquierda con el logotipo de Windows (Microsoft Natural Keyboard). 
Compatible con .NET Compact FrameworkMTecla M. 
Compatible con .NET Compact FrameworkMButtonBotón central del mouse (mouse de tres botones). 
MediaNextTrackTecla siguiente pista de multimedia (Windows 2000 o posterior). 
MediaPlayPauseTecla pausa de reproducción de multimedia (Windows 2000 o posterior). 
MediaPreviousTrackTecla pista anterior de multimedia (Windows 2000 o posterior). 
MediaStopTecla Detener reproducción de multimedia (Windows 2000 o posterior). 
Compatible con .NET Compact FrameworkMenuTecla ALT. 
Compatible con .NET Compact FrameworkModifiersMáscara de bits para extraer modificadores de un valor de tecla. 
Compatible con .NET Compact FrameworkMultiplyTecla multiplicación. 
Compatible con .NET Compact FrameworkNTecla N. 
Compatible con .NET Compact FrameworkNextTecla AV PÁG. 
Compatible con .NET Compact FrameworkNoNameConstante reservada para un uso futuro. 
Compatible con .NET Compact FrameworkNoneNinguna tecla presionada. 
Compatible con .NET Compact FrameworkNumLockTecla BLOQ NUM. 
Compatible con .NET Compact FrameworkNumPad0Tecla 0 del teclado numérico. 
Compatible con .NET Compact FrameworkNumPad1Tecla 1 del teclado numérico. 
Compatible con .NET Compact FrameworkNumPad2Tecla 2 del teclado numérico. 
Compatible con .NET Compact FrameworkNumPad3Tecla 3 del teclado numérico. 
Compatible con .NET Compact FrameworkNumPad4Tecla 4 del teclado numérico. 
Compatible con .NET Compact FrameworkNumPad5Tecla 5 del teclado numérico. 
Compatible con .NET Compact FrameworkNumPad6Tecla 6 del teclado numérico. 
Compatible con .NET Compact FrameworkNumPad7Tecla 7 del teclado numérico. 
Compatible con .NET Compact FrameworkNumPad8Tecla 8 del teclado numérico. 
Compatible con .NET Compact FrameworkNumPad9Tecla 9 del teclado numérico. 
Compatible con .NET Compact FrameworkOTecla O. 
Oem1Tecla 1 OEM. 
Oem102Tecla 102 OEM. 
Oem2Tecla 2 OEM. 
Oem3Tecla 3 OEM. 
Oem4Tecla 4 OEM. 
Oem5Tecla 5 OEM. 
Oem6Tecla 6 OEM. 
Oem7Tecla 7 OEM. 
Oem8Tecla 8 OEM. 
OemBackslashTecla de corchete angular o barra diagonal inversa OEM en el teclado RT de 102 teclas (Windows 2000 o posterior). 
Compatible con .NET Compact FrameworkOemClearTecla BORRAR. 
OemCloseBracketsTecla de corchete de cierre OEM en un teclado US estándar (Windows 2000 o posterior). 
OemcommaTecla de coma OEM en un teclado de cualquier país o región (Windows 2000 o posterior). 
OemMinusTecla menos OEM en un teclado de cualquier país o región (Windows 2000 o posterior). 
OemOpenBracketsTecla de corchete de apertura OEM en un teclado US estándar (Windows 2000 o posterior). 
OemPeriodTecla de punto OEM en un teclado de cualquier país o región (Windows 2000 o posterior). 
OemPipeTecla de barra vertical OEM en un teclado US estándar (Windows 2000 o posterior). 
OemplusTecla de signo más OEM en un teclado de cualquier país o región (Windows 2000 o posterior). 
OemQuestionTecla de signo de interrogación OEM en un teclado US estándar (Windows 2000 o posterior). 
OemQuotesTecla de comillas simples y dobles OEM en un teclado US estándar (Windows 2000 o posterior). 
OemSemicolonTecla de punto y coma OEM en un teclado US estándar (Windows 2000 o posterior). 
OemtildeTecla de tilde OEM en un teclado US estándar (Windows 2000 o posterior). 
Compatible con .NET Compact FrameworkPTecla P. 
Compatible con .NET Compact FrameworkPa1Tecla PA1. 
PacketSe utiliza para pasar caracteres Unicode como si fueran pulsaciones de tecla. El valor de la clave de paquete es la palabra baja de un valor de tecla virtual de 32 bits utilizado para métodos de entrada sin teclado. 
Compatible con .NET Compact FrameworkPageDownTecla AV PÁG. 
Compatible con .NET Compact FrameworkPageUpTecla RE PÁG. 
Compatible con .NET Compact FrameworkPauseTecla PAUSA. 
Compatible con .NET Compact FrameworkPlayTecla REPRODUCIR. 
Compatible con .NET Compact FrameworkPrintTecla IMPRIMIR. 
Compatible con .NET Compact FrameworkPrintScreenTecla IMPR PANT. 
Compatible con .NET Compact FrameworkPriorTecla RE PÁG. 
Compatible con .NET Compact FrameworkProcessKeyTecla PROCESS KEY. 
Compatible con .NET Compact FrameworkQTecla Q. 
Compatible con .NET Compact FrameworkRTecla R. 
Compatible con .NET Compact FrameworkRButtonBotón secundario del mouse. 
Compatible con .NET Compact FrameworkRControlKeyTecla CTRL derecha. 
Compatible con .NET Compact FrameworkReturnTecla RETORNO. 
Compatible con .NET Compact FrameworkRightTecla FLECHA DERECHA. 
Compatible con .NET Compact FrameworkRMenuTecla ALT derecha. 
Compatible con .NET Compact FrameworkRShiftKeyTecla MAYÚS derecha. 
Compatible con .NET Compact FrameworkRWinTecla derecha con el logotipo de Windows (Microsoft Natural Keyboard). 
Compatible con .NET Compact FrameworkSTecla S. 
Compatible con .NET Compact FrameworkScrollTecla BLOQ DESPL. 
Compatible con .NET Compact FrameworkSelectTecla SELECCIONAR. 
SelectMediaTecla seleccionar reproducción de multimedia (Windows 2000 o posterior). 
Compatible con .NET Compact FrameworkSeparatorTecla separador. 
Compatible con .NET Compact FrameworkShiftTecla modificadora MAYÚS. 
Compatible con .NET Compact FrameworkShiftKeyTecla MAYÚS. 
SleepLa tecla de espera del equipo. 
Compatible con .NET Compact FrameworkSnapshotTecla IMPR PANT. 
Compatible con .NET Compact FrameworkSpaceTecla BARRA ESPACIADORA. 
Compatible con .NET Compact FrameworkSubtractTecla resta. 
Compatible con .NET Compact FrameworkTTecla T. 
Compatible con .NET Compact FrameworkTabTecla TAB. 
Compatible con .NET Compact FrameworkUTecla U. 
Compatible con .NET Compact FrameworkUpTecla FLECHA ARRIBA. 
Compatible con .NET Compact FrameworkVTecla V. 
VolumeDownTecla bajar el volumen (Windows 2000 o posterior). 
VolumeMuteTecla silenciar el volumen (Windows 2000 o posterior). 
VolumeUpTecla subir el volumen (Windows 2000 o posterior). 
Compatible con .NET Compact FrameworkWTecla W. 
Compatible con .NET Compact FrameworkXTecla X. 
Compatible con .NET Compact FrameworkXButton1Primer botón x del mouse (mouse de cinco botones). 
Compatible con .NET Compact FrameworkXButton2Segundo botón x del mouse (mouse de cinco botones). 
Compatible con .NET Compact FrameworkYTecla Y. 
Compatible con .NET Compact FrameworkZTecla Z. 
Compatible con .NET Compact FrameworkZoomTecla ZOOM. 

La clase Keys contiene las constantes para procesar las acciones del teclado. Los miembros de la enumeración Keys constan de un código de tecla y un conjunto de modificadores combinados en un valor entero único. En la interfaz de programación de la aplicación Win32 (API) un valor de tecla tiene dos mitades: los bits de orden superior contienen el código de tecla (que es igual que un código de tecla virtual de Windows) y los bits de orden inferior representan los modificadores de la tecla, como las teclas MAYÚS, CONTROL y ALT.

NotaNota:

Esta enumeración no proporciona ninguna manera de probar si las teclas BLOQ MAYÚS o BLOQ NUM están activadas actualmente. Puede utilizar una de las técnicas siguientes para determinar si se activan estas claves:

  • Llame al método IsKeyLocked de la clase Control.

  • Para un control más riguroso, utilice las funciones de la API Win32 GetKeyState, GetAsyncKeyState o GetKeyboardState definidas para ello en user32.dll. Para obtener más información sobre cómo llamar a las funciones nativas, vea Consumir funciones DLL no administradas.

La tabla siguiente muestra los valores de código de tecla representados por dos valores enumerados, que representan las teclas generales del fabricante de equipos originales (OEM) y las asociaciones más específicas del teclado americano.

Valor hexadecimal

Teclado americano

OEM General

BA

OemSemicolon

Oem1

BF

OemQuestion

Oem2

C0

Oemtilde

Oem3

DB

OemOpenBrackets

Oem4

DC

OemPipe

Oem5

DD

OemCloseBrackets

Oem6

DE

OemQuotes

Oem7

E2

OemBackslash

Oem102

Nota de precauciónPrecaución:

Para .NET Framework 2.0, se agregó un miembro IMEAccept que reemplaza la entrada anterior, IMEAceept, que se había deletreado incorrectamente. La versión anterior se ha conservado por compatibilidad con versiones anteriores, pero puede eliminarse en versiones futuras de .NET Framework

En el ejemplo de código siguiente se utiliza el evento KeyDown para determinar el tipo de carácter escrito en el control.

// Boolean flag used to determine when a character other than a number is entered.
private bool nonNumberEntered = false;

// Handle the KeyDown event to determine the type of character entered into the control.
private void textBox1_KeyDown(object sender, System.Windows.Forms.KeyEventArgs e)
{
    // Initialize the flag to false.
    nonNumberEntered = false;

    // Determine whether the keystroke is a number from the top of the keyboard.
    if (e.KeyCode < Keys.D0 || e.KeyCode > Keys.D9)
    {
        // Determine whether the keystroke is a number from the keypad.
        if (e.KeyCode < Keys.NumPad0 || e.KeyCode > Keys.NumPad9)
        {
            // Determine whether the keystroke is a backspace.
            if(e.KeyCode != Keys.Back)
            {
                // A non-numerical keystroke was pressed.
                // Set the flag to true and evaluate in KeyPress event.
                nonNumberEntered = true;
            }
        }
    }
}

// This event occurs after the KeyDown event and can be used to prevent
// characters from entering the control.
private void textBox1_KeyPress(object sender, System.Windows.Forms.KeyPressEventArgs e)
{
    // Check for the flag being set in the KeyDown event.
    if (nonNumberEntered == true)
    {
        // Stop the character from being entered into the control since it is non-numerical.
        e.Handled = true;
    }
}


// Boolean flag used to determine when a character other than a number 
// is entered.
private boolean nonNumberEntered = false;

// Handle the KeyDown event to determine the type of character entered 
// into the control.
private void textBox1_KeyDown(Object sender, 
    System.Windows.Forms.KeyEventArgs e)
{
    // Initialize the flag to false.
    nonNumberEntered = false;

    // Determine whether the keystroke is a number from the top of the 
    // keyboard.
    if ((e.get_KeyCode().CompareTo(Keys.D0)) < 0 
        || (e.get_KeyCode().CompareTo(Keys.D9) > 0)) {

        // Determine whether the keystroke is a number from the keypad.
        if ((e.get_KeyCode().CompareTo(Keys.NumPad0) < 0 
            || (e.get_KeyCode().CompareTo(Keys.NumPad9)) > 0)) {

            // Determine whether the keystroke is a backspace.
            if (!(e.get_KeyCode().Equals(Keys.Back))) {
                    // A non-numerical keystroke was pressed.
                    // Set the flag to true and evaluate in KeyPress event.
                    nonNumberEntered = true;
            }
        }
    }
} //textBox1_KeyDown

// This event occurs after the KeyDown event and can be used to prevent
// characters from entering the control.
private void textBox1_KeyPress(Object sender, System.Windows.Forms.
    KeyPressEventArgs e)
{
    // Check for the flag being set in the KeyDown event.
    if (nonNumberEntered == true) {
        // Stop the character from being entered into the control since 
        // it is non-numerical.
        e.set_Handled(true);
    }
} //textBox1_KeyPress

Windows 98, Windows 2000 Service Pack 4, Windows CE, Windows Millennium, Windows Mobile para Pocket PC, Windows Mobile para Smartphone, Windows Server 2003, Windows XP Media Center, Windows XP Professional x64, Windows XP SP2, Windows XP Starter

Microsoft .NET Framework 3.0 es compatible con Windows Vista, Microsoft Windows XP SP2 y Windows Server 2003 SP1.

.NET Framework

Compatible con: 3.0, 2.0, 1.1, 1.0

.NET Compact Framework

Compatible con: 2.0, 1.0
Mostrar: