Keys Wyliczenie
Definicja
Ważne
Niektóre informacje odnoszą się do produktu w wersji wstępnej, który może zostać znacząco zmodyfikowany przed wydaniem. Firma Microsoft nie udziela żadnych gwarancji, jawnych lub domniemanych, w odniesieniu do informacji podanych w tym miejscu.
Określa kody kluczy i modyfikatory.
To wyliczenie obsługuje bitową kombinację jego wartości składowych.
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
- Dziedziczenie
- Atrybuty
Pola
A | 65 | Klucz A. |
Add | 107 | Klucz dodawania. |
Alt | 262144 | Klawisz modyfikatora ALT. |
Apps | 93 | Klucz aplikacji (Microsoft Natural Keyboard). |
Attn | 246 | Klucz ATTN. |
B | 66 | Klucz B. |
Back | 8 | Klucz BACKSPACE. |
BrowserBack | 166 | Klucz wsteczny przeglądarki. |
BrowserFavorites | 171 | Klucz ulubionej przeglądarki. |
BrowserForward | 167 | Klucz przekazywania w przeglądarce. |
BrowserHome | 172 | Klucz główny przeglądarki. |
BrowserRefresh | 168 | Klucz odświeżania przeglądarki. |
BrowserSearch | 170 | Klucz wyszukiwania przeglądarki. |
BrowserStop | 169 | Klucz zatrzymania przeglądarki. |
C | 67 | Klucz C. |
Cancel | 3 | Klucz ANULUJ. |
Capital | 20 | Klucz CAPS LOCK. |
CapsLock | 20 | Klucz CAPS LOCK. |
Clear | 12 | Klucz CLEAR. |
Control | 131072 | Klawisz modyfikatora CTRL. |
ControlKey | 17 | Klawisz CTRL. |
Crsel | 247 | Klucz CRSEL. |
D | 68 | Klucz D. |
D0 | 48 | Klucz 0. |
D1 | 49 | Klucz 1. |
D2 | 50 | Klucz 2. |
D3 | 51 | Klucz 3. |
D4 | 52 | Klucz 4. |
D5 | 53 | Klucz 5. |
D6 | 54 | Klucz 6. |
D7 | 55 | Klucz 7. |
D8 | 56 | Klucz 8. |
D9 | 57 | Klucz 9. |
Decimal | 110 | Klucz dziesiętny. |
Delete | 46 | Klucz DEL. |
Divide | 111 | Klucz podziału. |
Down | 40 | Klawisz STRZAŁKA W DÓŁ. |
E | 69 | Klucz E. |
End | 35 | Klucz END. |
Enter | 13 | Klawisz ENTER. |
EraseEof | 249 | Klucz ERASE EOF. |
Escape | 27 | Klawisz ESC. |
Execute | 43 | Klucz EXECUTE. |
Exsel | 248 | Klucz EXSEL. |
F | 70 | Klawisz F. |
F1 | 112 | Klawisz F1. |
F10 | 121 | Klawisz F10. |
F11 | 122 | Klawisz F11. |
F12 | 123 | Klawisz F12. |
F13 | 124 | Klawisz F13. |
F14 | 125 | Klawisz F14. |
F15 | 126 | Klawisz F15. |
F16 | 127 | Klawisz F16. |
F17 | 128 | Klawisz F17. |
F18 | 129 | Klawisz F18. |
F19 | 130 | Klawisz F19. |
F2 | 113 | Klawisz F2. |
F20 | 131 | Klawisz F20. |
F21 | 132 | Klawisz F21. |
F22 | 133 | Klucz F22. |
F23 | 134 | Klawisz F23. |
F24 | 135 | Klawisz F24. |
F3 | 114 | Klawisz F3. |
F4 | 115 | Klawisz F4. |
F5 | 116 | Klawisz F5. |
F6 | 117 | Klawisz F6. |
F7 | 118 | Klawisz F7. |
F8 | 119 | Klawisz F8. |
F9 | 120 | Klawisz F9. |
FinalMode | 24 | Klucz ostatniego trybu IME. |
G | 71 | Klucz G. |
H | 72 | Klucz H. |
HanguelMode | 21 | Klucz trybu hanguel IME. (obsługiwane pod kątem zgodności; użyj |
HangulMode | 21 | Klucz trybu hangul IME. |
HanjaMode | 25 | Klucz trybu IME Hanja. |
Help | 47 | Klucz HELP. |
Home | 36 | Klucz HOME. |
I | 73 | Klucz I. |
IMEAccept | 30 | Klucz akceptowania IME zastępuje IMEAceeptwartość . |
IMEAceept | 30 | Klucz akceptowania IME. Przestarzałe, zamiast tego użyj IMEAccept polecenia . |
IMEConvert | 28 | Klucz konwersji IME. |
IMEModeChange | 31 | Tryb IME zmienia klucz. |
IMENonconvert | 29 | Klucz bezkonwertu IME. |
Insert | 45 | Klucz INS. |
J | 74 | Klucz J. |
JunjaMode | 23 | Klucz trybu IME Junja. |
K | 75 | Klucz K. |
KanaMode | 21 | Klucz trybu kana IME. |
KanjiMode | 25 | Klucz trybu IME Kanji. |
KeyCode | 65535 | Maska bitów do wyodrębnienia kodu klucza z wartości klucza. |
L | 76 | Klucz L. |
LaunchApplication1 | 182 | Uruchom aplikację o jeden klucz. |
LaunchApplication2 | 183 | Uruchom aplikację dwa klucze. |
LaunchMail | 180 | Klucz poczty uruchamiania. |
LButton | 1 | Lewy przycisk myszy. |
LControlKey | 162 | Lewy klawisz CTRL. |
Left | 37 | Klawisz STRZAŁKA W LEWO. |
LineFeed | 10 | Klucz LINEFEED. |
LMenu | 164 | Lewy klawisz ALT. |
LShiftKey | 160 | Lewy klawisz SHIFT. |
LWin | 91 | Lewy klawisz logo systemu Windows (Microsoft Natural Keyboard). |
M | 77 | Klucz M. |
MButton | 4 | Środkowy przycisk myszy (mysz z trzema przyciskami). |
MediaNextTrack | 176 | Następny klucz śledzenia multimediów. |
MediaPlayPause | 179 | Klawisz wstrzymania odtwarzania multimediów. |
MediaPreviousTrack | 177 | Poprzedni klucz śledzenia multimediów. |
MediaStop | 178 | Klucz zatrzymania multimediów. |
Menu | 18 | Klawisz ALT. |
Modifiers | -65536 | Maska bitów do wyodrębniania modyfikatorów z wartości klucza. |
Multiply | 106 | Klucz mnożenia. |
N | 78 | Klucz N. |
Next | 34 | Klucz PAGE DOWN. |
NoName | 252 | Stała zarezerwowana do użytku w przyszłości. |
None | 0 | Nie naciśnięcie klawisza. |
NumLock | 144 | Klucz blokady NUM. |
NumPad0 | 96 | Klucz 0 na klawiaturze liczbowej. |
NumPad1 | 97 | 1 klucz na klawiaturze liczbowej. |
NumPad2 | 98 | Klucz 2 na klawiaturze liczbowej. |
NumPad3 | 99 | 3 klucz na klawiaturze liczbowej. |
NumPad4 | 100 | 4 klucz na klawiaturze liczbowej. |
NumPad5 | 101 | 5 klawiszy na klawiaturze liczbowej. |
NumPad6 | 102 | Klucz 6 na klawiaturze liczbowej. |
NumPad7 | 103 | Klucz 7 na klawiaturze liczbowej. |
NumPad8 | 104 | Klucz 8 na klawiaturze liczbowej. |
NumPad9 | 105 | Klucz 9 na klawiaturze liczbowej. |
O | 79 | Klucz O. |
Oem1 | 186 | Klucz OEM 1. |
Oem102 | 226 | Klucz OEM 102. |
Oem2 | 191 | Klucz OEM 2. |
Oem3 | 192 | Klucz OEM 3. |
Oem4 | 219 | Klucz OEM 4. |
Oem5 | 220 | Klucz OEM 5. |
Oem6 | 221 | Klucz OEM 6. |
Oem7 | 222 | Klucz OEM 7. |
Oem8 | 223 | Klucz OEM 8. |
OemBackslash | 226 | Nawias kątowy OEM lub klawisz ukośnika odwrotnego na klawiaturze klawisza RT 102. |
OemClear | 254 | Klucz CLEAR. |
OemCloseBrackets | 221 | Klawisz OEM zamykający nawias na standardowej klawiaturze USA. |
Oemcomma | 188 | Klawisz przecinka OEM na dowolnej klawiaturze kraju/regionu. |
OemMinus | 189 | Klawisz OEM minus na dowolnej klawiaturze kraju/regionu. |
OemOpenBrackets | 219 | Klawisz o otwartym nawiasie klamrowym OEM na standardowej klawiaturze USA. |
OemPeriod | 190 | Klawisz okresu OEM na dowolnej klawiaturze kraju/regionu. |
OemPipe | 220 | Klawisz potoku OEM na standardowej klawiaturze USA. |
Oemplus | 187 | Klawisz OEM plus na dowolnej klawiaturze kraju/regionu. |
OemQuestion | 191 | Klawisz znaku zapytania OEM na standardowej klawiaturze USA. |
OemQuotes | 222 | Klawisz OEM singled/double cudzysłowu na standardowej klawiaturze USA. |
OemSemicolon | 186 | Średnik OEM na standardowej klawiaturze USA. |
Oemtilde | 192 | Klawisz tyldy OEM na standardowej klawiaturze USA. |
P | 80 | Klucz P. |
Pa1 | 253 | Klucz PA1. |
Packet | 231 | Służy do przekazywania znaków Unicode tak, jakby były naciśnięciami klawiszy. Wartość klucza pakietu jest niskim słowem 32-bitowej wartości klucza wirtualnego używanej dla metod wejściowych innych niż klawiatura. |
PageDown | 34 | Klucz PAGE DOWN. |
PageUp | 33 | Klucz PAGE UP. |
Pause | 19 | Klucz PAUSE. |
Play | 250 | Klucz PLAY. |
42 | Klucz PRINT. |
|
PrintScreen | 44 | Klucz PRINT SCREEN. |
Prior | 33 | Klucz PAGE UP. |
ProcessKey | 229 | Klucz KLUCZA PROCESU. |
Q | 81 | Klucz Q. |
R | 82 | Klucz języka R. |
RButton | 2 | Prawy przycisk myszy. |
RControlKey | 163 | Prawy klawisz CTRL. |
Return | 13 | Klucz RETURN. |
Right | 39 | Klawisz STRZAŁKA W PRAWO. |
RMenu | 165 | Prawy klawisz ALT. |
RShiftKey | 161 | Prawy klawisz SHIFT. |
RWin | 92 | Prawy klawisz logo systemu Windows (Microsoft Natural Keyboard). |
S | 83 | Klucz S. |
Scroll | 145 | Klawisz SCROLL LOCK. |
Select | 41 | Klucz SELECT. |
SelectMedia | 181 | Wybierz klucz nośnika. |
Separator | 108 | Klucz separatora. |
Shift | 65536 | Klawisz modyfikatora SHIFT. |
ShiftKey | 16 | Klawisz SHIFT. |
Sleep | 95 | Klucz uśpienia komputera. |
Snapshot | 44 | Klucz PRINT SCREEN. |
Space | 32 | Klucz SPACEBAR. |
Subtract | 109 | Klucz odejmowy. |
T | 84 | Klucz T. |
Tab | 9 | Klawisz TAB. |
U | 85 | Klucz U. |
Up | 38 | Klawisz STRZAŁKA W GÓRĘ. |
V | 86 | Klucz V. |
VolumeDown | 174 | Klucz w dół woluminu. |
VolumeMute | 173 | Klucz wyciszenia woluminu. |
VolumeUp | 175 | Klucz woluminu w górę. |
W | 87 | Klucz W. |
X | 88 | Klucz X. |
XButton1 | 5 | Pierwszy przycisk myszy x (mysz z pięcioma przyciskami). |
XButton2 | 6 | Drugi przycisk myszy x (mysz z pięcioma przyciskami). |
Y | 89 | Klucz Y. |
Z | 90 | Klucz Z. |
Zoom | 251 | Klucz ZOOM. |
Przykłady
Poniższy przykład kodu używa KeyDown zdarzenia do określenia typu znaku wprowadzonego w kontrolce.
// 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
Uwagi
Klasa Keys zawiera stałe do przetwarzania danych wejściowych klawiatury. Elementy członkowskie wyliczenia Klucze składają się z kodu klucza i zestawu modyfikatorów połączonych w jedną wartość całkowitą. W interfejsie programowania aplikacji Win32 wartość klucza ma dwie połówki, a bity o wysokiej kolejności zawierają kod klucza (który jest taki sam jak kod klucza wirtualnego systemu Windows) i bity o niskim porządku reprezentują modyfikatory kluczy, takie jak klawisze SHIFT, CONTROL i ALT.
Ostrzeżenie
Nie używaj wartości w tym wyliczenie dla połączonych operacji bitowych. Wartości w wyliczenia nie wykluczają się wzajemnie.
Uwaga
To wyliczenie nie umożliwia sprawdzenia, czy klucze CAPS LOCK lub NUM LOCK są obecnie aktywowane. Możesz użyć jednej z następujących technik, aby określić, czy te klucze są aktywowane:
Wywołaj metodę IsKeyLockedControl klasy .
Aby uzyskać bardziej precyzyjną kontrolę, użyj funkcji
GetKeyState
interfejsu API systemu Windows ,GetAsyncKeyState
lubGetKeyboardState
zdefiniowanych w user32.dll, aby to zrobić. Aby uzyskać więcej informacji na temat wywoływania funkcji natywnych, zobacz Korzystanie z niezarządzanych funkcji DLL.
W poniższej tabeli przedstawiono wartości kodu klucza reprezentowane przez dwie wyliczone wartości, reprezentujące zarówno klucze producenta sprzętu ogólnego (OEM) i bardziej szczegółowe skojarzenia klawiatury USA.
Wartość szesnastkowa | Klawiatura USA | Ogólne producenta 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 |
Przestroga
W przypadku .NET Framework 2.0 dodano element członkowski IMEAccept, który zastępuje poprzedni wpis IMEAceept, który został niepoprawnie wpisana. Starsza wersja została zachowana w celu zapewnienia zgodności z poprzednimi wersjami, ale może zostać usunięta w przyszłych wersjach .NET Framework