Keys Enumeración

Definición

Especifica los modificadores y códigos de tecla.

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

A 65

Tecla A.

Add 107

Tecla agregar.

Alt 262144

Tecla modificadora ALT.

Apps 93

Tecla aplicación (Microsoft Natural Keyboard).

Attn 246

Tecla ATTN.

B 66

Tecla B.

Back 8

Tecla RETROCESO.

BrowserBack 166

Tecla Atrás del explorador.

BrowserFavorites 171

Tecla Favoritos del explorador.

BrowserForward 167

Tecla Adelante del explorador.

BrowserHome 172

Tecla Inicio del explorador.

BrowserRefresh 168

Tecla Actualizar del explorador.

BrowserSearch 170

Tecla Buscar del explorador.

BrowserStop 169

Tecla Detener del explorador.

C 67

Tecla C.

Cancel 3

Tecla CANCELAR.

Capital 20

Tecla LOCK CAPS.

CapsLock 20

Tecla LOCK CAPS.

Clear 12

Tecla BORRAR.

Control 131072

Tecla modificadora CTRL.

ControlKey 17

Tecla CTRL.

Crsel 247

Tecla CRSEL.

D 68

Tecla D.

D0 48

Tecla 0.

D1 49

Tecla 1.

D2 50

Tecla 2.

D3 51

Tecla 3.

D4 52

Tecla 4.

D5 53

Tecla 5.

D6 54

Tecla 6.

D7 55

Tecla 7.

D8 56

Tecla 8.

D9 57

Tecla 9.

Decimal 110

Tecla decimal.

Delete 46

Tecla DEL.

Divide 111

Tecla división.

Down 40

Tecla FLECHA ABAJO.

E 69

Tecla E.

End 35

Tecla FIN.

Enter 13

Tecla ENTRAR.

EraseEof 249

Tecla ERASE EOF.

Escape 27

Tecla ESC.

Execute 43

Tecla EJECUTAR.

Exsel 248

Tecla EXSEL.

F 70

Tecla F.

F1 112

Tecla F1.

F10 121

Tecla F10.

F11 122

Tecla F11.

F12 123

Tecla F12.

F13 124

Tecla F13.

F14 125

Tecla F14.

F15 126

Tecla F15.

F16 127

Tecla F16.

F17 128

Tecla F17.

F18 129

Tecla F18.

F19 130

Tecla F19.

F2 113

Tecla F2.

F20 131

Tecla F20.

F21 132

Tecla F21.

F22 133

Tecla F22.

F23 134

Tecla F23.

F24 135

Tecla F24.

F3 114

Tecla F3.

F4 115

Tecla F4.

F5 116

Tecla F5.

F6 117

Tecla F6.

F7 118

Tecla F7.

F8 119

Tecla F8.

F9 120

Tecla F9.

FinalMode 24

Tecla de modo final de Editores de métodos de entrada (IME).

G 71

Tecla G.

H 72

Tecla H.

HanguelMode 21

Tecla de modo Hanguel de Editores de métodos de entrada (IME) (se mantiene por compatibilidad; use HangulMode).

HangulMode 21

Tecla de modo Hangul de IME.

HanjaMode 25

Tecla de modo Hanja de IME.

Help 47

Tecla AYUDA.

Home 36

Tecla INICIO.

I 73

Tecla I.

IMEAccept 30

Tecla aceptar de Editores de métodos de entrada (IME), reemplaza a IMEAceept.

IMEAceept 30

Tecla aceptar de Editores de métodos de entrada (IME). Obsoleto, utilice IMEAccept en su lugar.

IMEConvert 28

Tecla convertir de Editores de métodos de entrada (IME).

IMEModeChange 31

Tecla cambio de modo de Editores de métodos de entrada (IME).

IMENonconvert 29

Tecla no convertir de Editores de métodos de entrada (IME).

Insert 45

Tecla INS.

J 74

Tecla J.

JunjaMode 23

Tecla de modo Junja de IME.

K 75

Tecla K.

KanaMode 21

Tecla de modo Kana de IME.

KanjiMode 25

Tecla de modo Kanji de IME.

KeyCode 65535

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

L 76

Tecla L.

LaunchApplication1 182

Tecla Iniciar aplicación uno.

LaunchApplication2 183

Tecla Iniciar aplicación dos.

LaunchMail 180

Tecla Iniciar correo.

LButton 1

Botón primario del mouse.

LControlKey 162

Tecla CTRL izquierda.

Left 37

Tecla FLECHA IZQUIERDA.

LineFeed 10

Tecla AVANCE DE LÍNEA.

LMenu 164

Tecla ALT izquierda.

LShiftKey 160

Tecla MAYÚS izquierda.

LWin 91

Tecla del logotipo de Windows izquierda (Microsoft Natural Keyboard).

M 77

Tecla M.

MButton 4

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

MediaNextTrack 176

Tecla multimedia Pista siguiente.

MediaPlayPause 179

Tecla multimedia Pausa de reproducción.

MediaPreviousTrack 177

Tecla multimedia Pista anterior.

MediaStop 178

Tecla multimedia Detener.

Menu 18

Tecla ALT.

Modifiers -65536

Máscara de bits para extraer modificadores de un valor de tecla.

Multiply 106

Tecla multiplicación.

N 78

Tecla N.

Next 34

Tecla AV PÁG.

NoName 252

Constante reservada para un uso futuro.

None 0

Ninguna tecla presionada.

NumLock 144

Tecla LOCK NUM.

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.

O 79

Tecla O.

Oem1 186

Tecla 1 de OEM.

Oem102 226

Tecla 102 de OEM.

Oem2 191

Tecla 2 de OEM.

Oem3 192

Tecla 3 de OEM.

Oem4 219

Tecla 4 de OEM.

Oem5 220

Tecla 5 de OEM.

Oem6 221

Tecla 6 de OEM.

Oem7 222

Tecla 7 de OEM.

Oem8 223

Tecla 8 de OEM.

OemBackslash 226

Tecla de corchete angular o barra diagonal inversa OEM en el teclado RT de 102 teclas.

OemClear 254

Tecla BORRAR.

OemCloseBrackets 221

Tecla de corchete de cierre OEM en un teclado US estándar.

Oemcomma 188

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

OemMinus 189

Tecla de signo menos de OEM en el teclado de cualquier país o región.

OemOpenBrackets 219

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

OemPeriod 190

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

OemPipe 220

Tecla de barra vertical OEM en un teclado US estándar.

Oemplus 187

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

OemQuestion 191

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

OemQuotes 222

Tecla de comillas simples y dobles OEM en un teclado US estándar.

OemSemicolon 186

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

Oemtilde 192

Tecla de tilde OEM en un teclado US estándar.

P 80

Tecla P.

Pa1 253

Tecla PA1.

Packet 231

Se 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.

PageDown 34

Tecla AV PÁG.

PageUp 33

Tecla RE PÁG.

Pause 19

Tecla PAUSA.

Play 250

Tecla PLAY.

Print 42

Tecla IMPRIMIR.

PrintScreen 44

Tecla IMPRIMIR PANTALLA.

Prior 33

Tecla RE PÁG.

ProcessKey 229

Tecla PROCESS KEY.

Q 81

Tecla Q.

R 82

Tecla R.

RButton 2

Botón secundario del mouse.

RControlKey 163

Tecla CTRL derecha.

Return 13

Tecla RETORNO.

Right 39

Tecla FLECHA DERECHA.

RMenu 165

Tecla ALT derecha.

RShiftKey 161

Tecla MAYÚS derecha.

RWin 92

Tecla del logotipo de Windows derecha (Microsoft Natural Keyboard).

S 83

Tecla S.

Scroll 145

Tecla BLOQ DESPL.

Select 41

Tecla SELECCIONAR.

SelectMedia 181

Tecla Seleccionar medio.

Separator 108

Tecla separador.

Shift 65536

Tecla modificadora MAYÚS.

ShiftKey 16

Tecla MAYÚS.

Sleep 95

La tecla de espera del equipo.

Snapshot 44

Tecla IMPRIMIR PANTALLA.

Space 32

Tecla BARRA ESPACIADORA.

Subtract 109

Tecla resta.

T 84

Tecla T.

Tab 9

Tecla TAB.

U 85

Tecla U.

Up 38

Tecla FLECHA ARRIBA.

V 86

Tecla V.

VolumeDown 174

Tecla Bajar volumen.

VolumeMute 173

Tecla Silenciar volumen.

VolumeUp 175

Tecla Subir volumen.

W 87

Tecla W.

X 88

Tecla X.

XButton1 5

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

XButton2 6

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

Y 89

Tecla Y.

Z 90

Tecla Z.

Zoom 251

Tecla ZOOM.

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 == 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 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 == 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 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.

Nota

Esta enumeración no proporciona ninguna manera de probar si las teclas LOCK o NUM LOCK de CAPS están activadas actualmente. Puede usar 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 preciso, use las funciones GetKeyStatede API de Windows , GetAsyncKeyStateo GetKeyboardState definidas en user32.dll, para ello. 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 de EE.UU. más específicas.

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

Precaución

Para la .NET Framework 2.0, se agregó un IMEAccept miembro 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 del .NET Framework

Se aplica a

Consulte también