Keys Enumeración

Definición

Especifica códigos de clave y modificadores.

Esta enumeración admite una combinación bit a bit de sus valores de miembro.

public enum class Keys
[System.ComponentModel.TypeConverter(typeof(System.Windows.Forms.KeysConverter))]
[System.Flags]
[System.Runtime.InteropServices.ComVisible(true)]
public enum Keys
[System.ComponentModel.TypeConverter(typeof(System.Windows.Forms.KeysConverter))]
[System.Flags]
public enum Keys
[<System.ComponentModel.TypeConverter(typeof(System.Windows.Forms.KeysConverter))>]
[<System.Flags>]
[<System.Runtime.InteropServices.ComVisible(true)>]
type Keys = 
[<System.ComponentModel.TypeConverter(typeof(System.Windows.Forms.KeysConverter))>]
[<System.Flags>]
type Keys = 
Public Enum Keys
Herencia
Atributos

Campos

Nombre Valor Description
Modifiers -65536

Máscara de bits que se va a extraer modificadores de un valor de clave.

None 0

No se presiona ninguna tecla.

LButton 1

Botón izquierdo del mouse.

RButton 2

Botón derecho del mouse.

Cancel 3

Tecla CANCEL.

MButton 4

Botón central del mouse (mouse de tres botones).

XButton1 5

El primer botón x del mouse (mouse de cinco botones).

XButton2 6

Segundo botón x del mouse (mouse de cinco botones).

Back 8

La tecla RETROCESO.

Tab 9

La tecla TAB.

LineFeed 10

Tecla LINEFEED.

Clear 12

Tecla CLEAR.

Enter 13

Tecla ENTRAR.

Return 13

Tecla RETURN.

ShiftKey 16

La tecla MAYÚS.

ControlKey 17

La tecla CTRL.

Menu 18

La tecla ALT.

Pause 19

La tecla PAUSA.

Capital 20

Tecla CAPS LOCK.

CapsLock 20

Tecla CAPS LOCK.

HanguelMode 21

Tecla del modo Desuelto de IME. (se mantiene por compatibilidad; use HangulMode)

HangulMode 21

Tecla de modo IME Hangul.

KanaMode 21

Tecla de modo Kana de IME.

JunjaMode 23

Tecla del modo Junja de IME.

FinalMode 24

Tecla de modo final de IME.

HanjaMode 25

Tecla de modo IME Hanja.

KanjiMode 25

Tecla de modo Kanji de IME.

Escape 27

La tecla ESC.

IMEConvert 28

Clave de conversión de IME.

IMENonconvert 29

Tecla noconvertida de IME.

IMEAccept 30

La clave de aceptación de IME reemplaza IMEAceepta .

IMEAceept 30

Clave de aceptación de IME. Obsoleto, use IMEAccept en su lugar.

IMEModeChange 31

Tecla de cambio del modo IME.

Space 32

La tecla BARRA ESPACIADORA.

PageUp 33

La tecla RE PÁG.

Prior 33

La tecla RE PÁG.

Next 34

La tecla AV PÁG.

PageDown 34

La tecla AV PÁG.

End 35

La tecla FIN.

Home 36

La tecla INICIO.

Left 37

Tecla FLECHA IZQUIERDA.

Up 38

Tecla FLECHA ARRIBA.

Right 39

Tecla FLECHA DERECHA.

Down 40

Tecla FLECHA ABAJO.

Select 41

Tecla SELECT.

Print 42

Tecla PRINT.

Execute 43

Tecla EXECUTE.

PrintScreen 44

Tecla IMPRIMIR PANTALLA.

Snapshot 44

Tecla IMPRIMIR PANTALLA.

Insert 45

Tecla INS.

Delete 46

Tecla DEL.

Help 47

La clave de AYUDA.

D0 48

La tecla 0.

D1 49

La tecla 1.

D2 50

La tecla 2.

D3 51

La tecla 3.

D4 52

La tecla 4.

D5 53

La tecla 5.

D6 54

La tecla 6.

D7 55

La tecla 7.

D8 56

La tecla 8.

D9 57

La tecla 9.

A 65

La tecla A.

B 66

La tecla B.

C 67

La tecla C.

D 68

La tecla D.

E 69

La tecla E.

F 70

La tecla F.

G 71

La tecla G.

H 72

La tecla H.

I 73

La tecla I.

J 74

La tecla J.

K 75

La tecla K.

L 76

La tecla L.

M 77

La tecla M.

N 78

La tecla N.

O 79

La tecla O.

P 80

La tecla P.

Q 81

La tecla Q.

R 82

La tecla R.

S 83

La tecla S.

T 84

La tecla T.

U 85

La tecla U.

V 86

La tecla V.

W 87

La tecla W.

X 88

La tecla X.

Y 89

La tecla Y.

Z 90

La tecla Z.

LWin 91

Tecla del logotipo de Windows izquierda (teclado natural Microsoft).

RWin 92

Tecla del logotipo Windows derecha (teclado natural Microsoft).

Apps 93

Tecla de aplicación (Microsoft Teclado natural).

Sleep 95

Tecla de suspensión del equipo.

NumPad0 96

Tecla 0 del teclado numérico.

NumPad1 97

Tecla 1 del teclado numérico.

NumPad2 98

Tecla 2 del teclado numérico.

NumPad3 99

Tecla 3 del teclado numérico.

NumPad4 100

Tecla 4 del teclado numérico.

NumPad5 101

Tecla 5 del teclado numérico.

NumPad6 102

Tecla 6 del teclado numérico.

NumPad7 103

Tecla 7 del teclado numérico.

NumPad8 104

Tecla 8 del teclado numérico.

NumPad9 105

Tecla 9 del teclado numérico.

Multiply 106

Tecla de multiplicación.

Add 107

La clave add.

Separator 108

Clave separadora.

Subtract 109

Tecla resta.

Decimal 110

Tecla decimal.

Divide 111

Clave de división.

F1 112

La tecla F1.

F2 113

La tecla F2.

F3 114

La tecla F3.

F4 115

La tecla F4.

F5 116

La tecla F5.

F6 117

La tecla F6.

F7 118

La tecla F7.

F8 119

La tecla F8.

F9 120

La tecla F9.

F10 121

La tecla F10.

F11 122

La tecla F11.

F12 123

La tecla F12.

F13 124

La tecla F13.

F14 125

La tecla F14.

F15 126

La tecla F15.

F16 127

La tecla F16.

F17 128

Tecla F17.

F18 129

Tecla F18.

F19 130

Tecla F19.

F20 131

Tecla F20.

F21 132

Tecla F21.

F22 133

Tecla F22.

F23 134

Tecla F23.

F24 135

Tecla F24.

NumLock 144

Tecla NUM LOCK.

Scroll 145

La tecla BLOQ DESPL.

LShiftKey 160

Tecla MAYÚS izquierda.

RShiftKey 161

Tecla MAYÚS derecha.

LControlKey 162

Tecla CTRL izquierda.

RControlKey 163

Tecla CTRL derecha.

LMenu 164

Tecla ALT izquierda.

RMenu 165

Tecla ALT derecha.

BrowserBack 166

Tecla atrás del explorador.

BrowserForward 167

Tecla de reenvío del explorador.

BrowserRefresh 168

Tecla de actualización del explorador.

BrowserStop 169

Tecla de detención del explorador.

BrowserSearch 170

Tecla de búsqueda del explorador.

BrowserFavorites 171

Tecla favoritos del explorador.

BrowserHome 172

Tecla principal del explorador.

VolumeMute 173

Tecla de silenciación de volumen.

VolumeDown 174

Tecla de reducción de volumen.

VolumeUp 175

Tecla de subir volumen.

MediaNextTrack 176

Tecla de pista siguiente del medio.

MediaPreviousTrack 177

Tecla de seguimiento anterior del medio.

MediaStop 178

Tecla Detener multimedia.

MediaPlayPause 179

Tecla de pausa de reproducción multimedia.

LaunchMail 180

La clave de correo de inicio.

SelectMedia 181

Tecla de selección de medios.

LaunchApplication1 182

La aplicación de inicio es una clave.

LaunchApplication2 183

La aplicación de inicio dos claves.

Oem1 186

Tecla OEM 1.

OemSemicolon 186

Tecla punto y coma OEM en un teclado estándar de EE. UU.

Oemplus 187

Tecla más OEM en cualquier teclado de país o región.

Oemcomma 188

Tecla de coma OEM en cualquier teclado de país o región.

OemMinus 189

Tecla menos oem en cualquier teclado de país o región.

OemPeriod 190

Tecla de período oem en cualquier teclado de país o región.

Oem2 191

Tecla OEM 2.

OemQuestion 191

Tecla de signo de interrogación OEM en un teclado estándar de EE. UU.

Oem3 192

Tecla OEM 3.

Oemtilde 192

Tecla tilde OEM en un teclado estándar de EE. UU.

Oem4 219

Tecla OEM 4.

OemOpenBrackets 219

Tecla de corchete de apertura OEM en un teclado estándar de EE. UU.

Oem5 220

Tecla OEM 5.

OemPipe 220

Tecla de canalización OEM en un teclado estándar de EE. UU.

Oem6 221

Tecla OEM 6.

OemCloseBrackets 221

Tecla de cierre del OEM en un teclado estándar de EE. UU.

Oem7 222

Tecla OEM 7.

OemQuotes 222

Tecla de comilla simple/doble OEM en un teclado estándar de EE. UU.

Oem8 223

Tecla OEM 8.

Oem102 226

Tecla OEM 102.

OemBackslash 226

El corchete angular oem o la tecla de barra diagonal inversa en el teclado rt 102 tecla.

ProcessKey 229

Clave DE PROCESO.

Packet 231

Se usa para pasar caracteres Unicode como si fueran pulsaciones de tecla. El valor de la tecla Packet es la palabra baja de un valor de clave virtual de 32 bits que se usa para los métodos de entrada que no son de teclado.

Attn 246

Tecla ATTN.

Crsel 247

Tecla CRSEL.

Exsel 248

Tecla EXSEL.

EraseEof 249

Tecla ERASE EOF.

Play 250

Tecla PLAY.

Zoom 251

Tecla ZOOM.

NoName 252

Constante reservada para uso futuro.

Pa1 253

Tecla PA1.

OemClear 254

Tecla CLEAR.

KeyCode 65535

Máscara de bits para extraer un código de clave de un valor de clave.

Shift 65536

Tecla modificadora MAYÚS.

Control 131072

Tecla modificadora CTRL.

Alt 262144

Tecla modificadora ALT.

Ejemplos

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

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

   // Handle the KeyDown event to determine the type of character entered into the control.
   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;
            }
         }
      }
      //If shift key was pressed, it's not a number.
      if (Control::ModifierKeys == Keys::Shift) {
         nonNumberEntered = true;
      }
   }

   // This event occurs after the KeyDown event and can be used to prevent
   // characters from entering the control.
   void textBox1_KeyPress( Object^ /*sender*/, System::Windows::Forms::KeyPressEventArgs^ e )
   {
      // Check for the flag being set in the KeyDown event.
      if ( nonNumberEntered)
      {         // 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 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;
            }
        }
    }
    //If shift key was pressed, it's not a number.
    if (Control.ModifierKeys == Keys.Shift) {
        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)
    {
        // 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 nonNumberEntered As Boolean = False


 ' Handle the KeyDown event to determine the type of character entered into the control.
 Private Sub textBox1_KeyDown(sender As Object, e As System.Windows.Forms.KeyEventArgs) _
      Handles textBox1.KeyDown
     ' 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 OrElse e.KeyCode > Keys.D9 Then
         ' Determine whether the keystroke is a number from the keypad.
         If e.KeyCode < Keys.NumPad0 OrElse e.KeyCode > Keys.NumPad9 Then
             ' Determine whether the keystroke is a backspace.
             If e.KeyCode <> Keys.Back Then
                 ' A non-numerical keystroke was pressed. 
                 ' Set the flag to true and evaluate in KeyPress event.
                 nonNumberEntered = True
             End If
         End If
     End If
     'If shift key was pressed, it's not a number.
     If Control.ModifierKeys = Keys.Shift Then
         nonNumberEntered = true
     End If
 End Sub


 ' This event occurs after the KeyDown event and can be used 
 ' to prevent characters from entering the control.
 Private Sub textBox1_KeyPress(sender As Object, e As System.Windows.Forms.KeyPressEventArgs) _
     Handles textBox1.KeyPress
     ' Check for the flag being set in the KeyDown event.
     If nonNumberEntered = True Then
         ' Stop the character from being entered into the control since it is non-numerical.
         e.Handled = True
     End If
 End Sub

Comentarios

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

Advertencia

No use los valores de esta enumeración para las operaciones bit a bit combinadas. Los valores de la enumeración no son mutuamente excluyentes.

Note

Esta enumeración no proporciona ninguna manera de probar si las claves CAPS LOCK o NUM LOCK están activadas actualmente. Puede usar una de las técnicas siguientes para determinar si estas claves están activadas:

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

  • Para un control más preciso, use las funciones de API de Windows GetKeyState, GetAsyncKeyState o GetKeyboardState definidas en user32.dll, para hacerlo. Para obtener más información sobre cómo llamar a funciones nativas, consulte Consumo de funciones DLL no administradas.

En la tabla siguiente se muestran los valores de código clave representados por dos valores enumerados, que representan las teclas generales del fabricante de equipos originales (OEM) y las asociaciones de teclado más específicas de EE. UU..

Valor hexadecimal Teclado de EE. UU. General OEM
Licenciatura en Artes OemSemicolon Oem1
BF OemQuestion Oem2
C0 Oemtilde Oem3
DB OemOpenBrackets Oem4
DC OemPipe Oem5
DD OemCloseBrackets Oem6
DE OemQuotes Oem7
E2 OemBackslash Oem102

Caution

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

Se aplica a

Consulte también