Keys Enum

Definition

Anger nyckelkoder och modifierare.

Den här uppräkningen stöder en bitvis kombination av dess medlemsvärden.

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
Arv
Attribut

Fält

Name Värde Description
Modifiers -65536

Bitmasken för att extrahera modifierare från ett nyckelvärde.

None 0

Ingen tangent har tryckts på.

LButton 1

Vänster musknapp.

RButton 2

Höger musknapp.

Cancel 3

CANCEL-nyckeln.

MButton 4

Den mellersta musknappen (treknappsmus).

XButton1 5

Den första x-musknappen (femknappsmus).

XButton2 6

Den andra x-musknappen (femknappsmus).

Back 8

BACKSPACE-nyckeln.

Tab 9

TABB-tangenten.

LineFeed 10

LINEFEED-nyckeln.

Clear 12

CLEAR-nyckeln.

Enter 13

RETUR-nyckeln.

Return 13

RETUR-nyckeln.

ShiftKey 16

SKIFT-nyckeln.

ControlKey 17

CTRL-tangenten.

Menu 18

ALT-nyckeln.

Pause 19

PAUS-tangenten.

Capital 20

CAPS LOCK-nyckeln.

CapsLock 20

CAPS LOCK-nyckeln.

HanguelMode 21

IME Hanguel-lägesnyckeln. (underhålls för kompatibilitet, användning HangulMode)

HangulMode 21

IME Hangul-lägesnyckeln.

KanaMode 21

IME Kana-lägesnyckeln.

JunjaMode 23

IME Junja-lägesnyckeln.

FinalMode 24

Den slutliga IME-lägesnyckeln.

HanjaMode 25

IME Hanja-lägesnyckeln.

KanjiMode 25

IME Kanji-lägesnyckeln.

Escape 27

ESC-nyckeln.

IMEConvert 28

IME-konverterarnyckeln.

IMENonconvert 29

IME-nyckeln som inte är konverterad.

IMEAccept 30

IME-acceptnyckeln ersätter IMEAceept.

IMEAceept 30

IME-acceptnyckeln. Föråldrad, använd IMEAccept i stället.

IMEModeChange 31

Ändra nyckel för IME-läge.

Space 32

Blankstegstangenten.

PageUp 33

PAGE UP-nyckeln.

Prior 33

PAGE UP-nyckeln.

Next 34

NED-TANGENTEN SIDA NED.

PageDown 34

NED-TANGENTEN SIDA NED.

End 35

End-nyckeln.

Home 36

HOME-nyckeln.

Left 37

VÄNSTERPIL-tangenten.

Up 38

UPPÅTPIL-tangenten.

Right 39

HÖGERPIL- tangenten.

Down 40

NEDÅTPIL- tangenten.

Select 41

SELECT-nyckeln.

Print 42

PRINT-nyckeln.

Execute 43

EXECUTE-nyckeln.

PrintScreen 44

TANGENTEN UTSKRIFTSSKÄRM.

Snapshot 44

TANGENTEN UTSKRIFTSSKÄRM.

Insert 45

INS-nyckeln.

Delete 46

DEL-nyckeln.

Help 47

HJÄLP-nyckeln.

D0 48

0-nyckeln.

D1 49

1-nyckeln.

D2 50

2-nyckeln.

D3 51

3-nyckeln.

D4 52

4-nyckeln.

D5 53

5-tangenten.

D6 54

6-nyckeln.

D7 55

7-nyckeln.

D8 56

8-nyckeln.

D9 57

9-nyckeln.

A 65

A-nyckeln.

B 66

B-nyckeln.

C 67

C-nyckeln.

D 68

D-nyckeln.

E 69

E-nyckeln.

F 70

F-nyckeln.

G 71

G-nyckeln.

H 72

H-nyckeln.

I 73

I-nyckeln.

J 74

J-nyckeln.

K 75

K-nyckeln.

L 76

L-nyckeln.

M 77

M-nyckeln.

N 78

N-nyckeln.

O 79

O-nyckeln.

P 80

P-nyckeln.

Q 81

Q-nyckeln.

R 82

R-nyckeln.

S 83

S-nyckeln.

T 84

T-nyckeln.

U 85

U-nyckeln.

V 86

V-nyckeln.

W 87

W-nyckeln.

X 88

X-nyckeln.

Y 89

Y-nyckeln.

Z 90

Z-nyckeln.

LWin 91

Den vänstra Windows-tangenten (Microsoft naturligt tangentbord).

RWin 92

Den högra Windows-tangenten (Microsoft naturligt tangentbord).

Apps 93

Programnyckeln (Microsoft naturligt tangentbord).

Sleep 95

Datorns vilolägesnyckel.

NumPad0 96

0-tangenten på det numeriska knappsatsen.

NumPad1 97

1-tangenten på det numeriska knappsatsen.

NumPad2 98

2-tangenten på det numeriska knappsatsen.

NumPad3 99

3-tangenten på det numeriska knappsatsen.

NumPad4 100

4-tangenten på det numeriska knappsatsen.

NumPad5 101

5-tangenten på det numeriska knappsatsen.

NumPad6 102

6-tangenten på det numeriska knappsatsen.

NumPad7 103

7-tangenten på den numeriska knappsatsen.

NumPad8 104

8-tangenten på det numeriska knappsatsen.

NumPad9 105

9-tangenten på det numeriska knappsatsen.

Multiply 106

Multiplikationsnyckeln.

Add 107

Lägg till nyckel.

Separator 108

Avgränsarnyckeln.

Subtract 109

Subtrahera nyckeln.

Decimal 110

Decimalnyckeln.

Divide 111

Delningsnyckeln.

F1 112

F1-nyckeln.

F2 113

F2-nyckeln.

F3 114

F3-nyckeln.

F4 115

F4-nyckeln.

F5 116

F5-nyckeln.

F6 117

F6-nyckeln.

F7 118

F7-nyckeln.

F8 119

F8-nyckeln.

F9 120

F9-nyckeln.

F10 121

F10-nyckeln.

F11 122

F11-nyckeln.

F12 123

F12-nyckeln.

F13 124

F13-nyckeln.

F14 125

F14-nyckeln.

F15 126

F15-nyckeln.

F16 127

F16-nyckeln.

F17 128

F17-nyckeln.

F18 129

F18-nyckeln.

F19 130

F19-nyckeln.

F20 131

F20-nyckeln.

F21 132

F21-nyckeln.

F22 133

F22-nyckeln.

F23 134

F23-nyckeln.

F24 135

F24-nyckeln.

NumLock 144

NUM LOCK-nyckeln.

Scroll 145

RULLNINGSLÅSNYCKELN.

LShiftKey 160

Den vänstra SKIFT-nyckeln.

RShiftKey 161

Höger SKIFT-nyckel.

LControlKey 162

Den vänstra CTRL-tangenten.

RControlKey 163

Den högra CTRL-tangenten.

LMenu 164

Den vänstra ALT-nyckeln.

RMenu 165

Rätt ALT-nyckel.

BrowserBack 166

Webbläsarens servernyckel.

BrowserForward 167

Webbläsarens framåtriktade nyckel.

BrowserRefresh 168

Webbläsarens uppdateringsnyckel.

BrowserStop 169

Webbläsarens stoppnyckel.

BrowserSearch 170

Webbläsarens söknyckel.

BrowserFavorites 171

Webbläsarens favoritnyckel.

BrowserHome 172

Webbläsarens hemnyckel.

VolumeMute 173

Volymens ljudavstängningsnyckel.

VolumeDown 174

Ned-tangenten för volymen.

VolumeUp 175

Upp-tangenten för volymen.

MediaNextTrack 176

Mediets nästa spårnyckel.

MediaPreviousTrack 177

Mediets tidigare spårnyckel.

MediaStop 178

Media-stoppnyckeln.

MediaPlayPause 179

Pausnyckeln för uppspelning av media.

LaunchMail 180

Starta e-postnyckeln.

SelectMedia 181

Välj medienyckel.

LaunchApplication1 182

Startprogrammet en nyckel.

LaunchApplication2 183

Startprogrammets två nyckel.

Oem1 186

OEM 1-nyckeln.

OemSemicolon 186

OEM Semikolon-tangenten på ett amerikanskt standardtangentbord.

Oemplus 187

OEM plus-tangenten på valfritt tangentbord för land/region.

Oemcomma 188

OEM-kommanyckeln på valfritt tangentbord för land/region.

OemMinus 189

OEM minus-tangenten på valfritt tangentbord för land/region.

OemPeriod 190

OEM-periodnyckeln på valfritt tangentbord för land/region.

Oem2 191

OEM 2-nyckeln.

OemQuestion 191

OEM-frågetecknet på ett amerikanskt standardtangentbord.

Oem3 192

OEM 3-nyckeln.

Oemtilde 192

OEM-tilde-tangenten på ett amerikanskt standardtangentbord.

Oem4 219

OEM 4-nyckeln.

OemOpenBrackets 219

OEM-tangenten med öppen hakparentes på ett amerikanskt standardtangentbord.

Oem5 220

OEM 5-nyckeln.

OemPipe 220

OEM-rörnyckeln på ett amerikanskt standardtangentbord.

Oem6 221

OEM 6-nyckeln.

OemCloseBrackets 221

Oem-tangenten stänger hakparentesen på ett amerikanskt standardtangentbord.

Oem7 222

OEM 7-nyckeln.

OemQuotes 222

OEM-tangenten för enkel-/dubbelcitat på ett amerikanskt standardtangentbord.

Oem8 223

OEM 8-nyckeln.

Oem102 226

OEM 102-nyckeln.

OemBackslash 226

OEM-vinkelparentesen eller omvänt snedstreck på RT 102-tangenttangentbordet.

ProcessKey 229

NYCKELN PROCESS.

Packet 231

Används för att skicka Unicode-tecken som om de vore tangenttryckningar. Värdet paketnyckel är det låga ordet för ett 32-bitars virtuellt nyckelvärde som används för indatametoder som inte är tangentbord.

Attn 246

ATTN-nyckeln.

Crsel 247

CRSEL-nyckeln.

Exsel 248

EXSEL-nyckeln.

EraseEof 249

Radera EOF-nyckeln.

Play 250

PLAY-nyckeln.

Zoom 251

ZOOM-tangenten.

NoName 252

En konstant som är reserverad för framtida användning.

Pa1 253

PA1-nyckeln.

OemClear 254

CLEAR-nyckeln.

KeyCode 65535

Bitmasken för att extrahera en nyckelkod från ett nyckelvärde.

Shift 65536

Skift-modifierarnyckeln.

Control 131072

Ctrl-modifierarnyckeln.

Alt 262144

ALT-modifierarens nyckel.

Exempel

I följande kodexempel används KeyDown händelsen för att fastställa vilken typ av tecken som angetts i kontrollen.

   // 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

Kommentarer

Klassen Keys innehåller konstanter för bearbetning av tangentbordsindata. Medlemmarna i uppräkningen Nycklar består av en nyckelkod och en uppsättning modifierare som kombineras till ett enda heltalsvärde. I Win32-programprogramprogramgränssnittet (API) har ett nyckelvärde två halvor, med de högordningsbitar som innehåller nyckelkoden (som är samma som en Windows virtuell nyckelkod) och de lågordningsbitar som representerar nyckelmodifierare som SKIFT-, CONTROL- och ALT-nycklar.

Varning

Använd inte värdena i den här uppräkningen för kombinerade bitvisåtgärder. Värdena i uppräkningen är inte ömsesidigt uteslutande.

Note

Den här uppräkningen ger inget sätt att testa om CAPS LOCK- eller NUM LOCK-nycklarna för närvarande är aktiverade. Du kan använda någon av följande tekniker för att avgöra om dessa nycklar är aktiverade:

  • IsKeyLocked Anropa klassens Control metod.

  • För finare kontroll använder du Windows API-funktionerna GetKeyState, GetAsyncKeyState eller GetKeyboardState som definierats i user32.dll, för att göra detta. Mer information om hur du anropar inbyggda funktioner finns i Använda ohanterade DLL-funktioner.

I följande tabell visas de nyckelkodvärden som representeras av två uppräknade värden, som representerar både OEM-tangenterna (General Original Equipment Manufacturer) och de mer specifika associationerna mellan usa och tangentbord.

Hexadecimalt värde Amerikanskt tangentbord Allmän OEM
Kandidatexamen i humaniora OemSemicolon Oem1
pojkvän OemQuestion Oem2
C0 Oemtilde Oem3
DB OemOpenBrackets Oem4
DC OemPipe Oem5
DD OemCloseBrackets Oem6
DE OemQuotes Oem7
E2 OemBackslash Oem102

Caution

För .NET Framework 2.0 lades en medlem IMEAccept till som ersätter den tidigare posten, IMEAceept, som stavades felaktigt. Den äldre versionen har bevarats för bakåtkompatibilitet, men den kan tas bort i framtida versioner av .NET.

Gäller för

Se även