Keys Výčet
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
Určuje kódy klíčů a modifikátory.
Tento výčet podporuje bitové kombinace hodnot jeho členů.
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
- Dědičnost
- Atributy
Pole
A | 65 | Klíč A. |
Add | 107 | Klíč add. |
Alt | 262144 | Modifikační klávesa ALT. |
Apps | 93 | Klávesa aplikace (Microsoft Natural Keyboard). |
Attn | 246 | Klíč ATTN. |
B | 66 | Klávesa B. |
Back | 8 | Klávesa BACKSPACE. |
BrowserBack | 166 | Klávesa zpět prohlížeče. |
BrowserFavorites | 171 | Klíč oblíbených položek v prohlížeči. |
BrowserForward | 167 | Předaný klíč prohlížeče. |
BrowserHome | 172 | Domovská klávesa prohlížeče. |
BrowserRefresh | 168 | Obnovovací klíč prohlížeče. |
BrowserSearch | 170 | Vyhledávací klíč prohlížeče. |
BrowserStop | 169 | Klávesa stop prohlížeče. |
C | 67 | Klávesa C. |
Cancel | 3 | Klíč CANCEL. |
Capital | 20 | Klávesa CAPS LOCK. |
CapsLock | 20 | Klávesa CAPS LOCK. |
Clear | 12 | Klávesa CLEAR. |
Control | 131072 | Modifikační klávesa CTRL |
ControlKey | 17 | Klávesa CTRL. |
Crsel | 247 | Klíč CRSEL. |
D | 68 | Klávesa D. |
D0 | 48 | Klíč 0. |
D1 | 49 | Klíč 1. |
D2 | 50 | Klíč 2. |
D3 | 51 | Klíč 3. |
D4 | 52 | Klíč 4. |
D5 | 53 | Klávesa 5. |
D6 | 54 | Klíč 6. |
D7 | 55 | Klávesa 7. |
D8 | 56 | Klíč 8. |
D9 | 57 | Klíč 9. |
Decimal | 110 | Desetinný klíč. |
Delete | 46 | Klíč DEL. |
Divide | 111 | Klíč divide. |
Down | 40 | Klávesa ŠIPKA DOLŮ. |
E | 69 | Klávesa E. |
End | 35 | Klíč END. |
Enter | 13 | Klávesa ENTER. |
EraseEof | 249 | Klíč ERASE EOF. |
Escape | 27 | Klávesa ESC. |
Execute | 43 | Klíč EXECUTE. |
Exsel | 248 | Klíč EXSEL. |
F | 70 | Klávesa F. |
F1 | 112 | Klávesa F1. |
F10 | 121 | Klávesa F10. |
F11 | 122 | Klávesa F11. |
F12 | 123 | Klávesa F12. |
F13 | 124 | Klávesa F13. |
F14 | 125 | Klávesa F14. |
F15 | 126 | Klávesa F15. |
F16 | 127 | Klávesa F16. |
F17 | 128 | Klávesa F17. |
F18 | 129 | Klávesa F18. |
F19 | 130 | Klávesa F19. |
F2 | 113 | Klávesa F2. |
F20 | 131 | Klávesa F20. |
F21 | 132 | Klávesa F21. |
F22 | 133 | Klávesa F22. |
F23 | 134 | Klávesa F23. |
F24 | 135 | Klávesa F24. |
F3 | 114 | Klávesa F3. |
F4 | 115 | Klávesa F4. |
F5 | 116 | Klávesa F5. |
F6 | 117 | Klávesa F6. |
F7 | 118 | Klávesa F7. |
F8 | 119 | Klávesa F8. |
F9 | 120 | Klávesa F9. |
FinalMode | 24 | Klávesa koncového režimu editoru IME |
G | 71 | Klávesa G. |
H | 72 | Klávesa H. |
HanguelMode | 21 | Klávesa režimu Hanguel editoru IME (pro zajištění kompatibility; použití |
HangulMode | 21 | Klávesa režimu Hangul editoru IME. |
HanjaMode | 25 | Klávesa režimu Hanja editoru IME |
Help | 47 | Klíč NÁPOVĚDY. |
Home | 36 | Klávesa HOME. |
I | 73 | Klíč I. |
IMEAccept | 30 | Editor IME přijímá klíč, nahrazuje IMEAceept. |
IMEAceept | 30 | Editor IME přijímá klíč. Zastaralé, použijte IMEAccept místo toho. |
IMEConvert | 28 | Klíč převodu editoru IME |
IMEModeChange | 31 | Režim editoru IME změní klíč. |
IMENonconvert | 29 | Klíč IME, který se nepřekonvertuje. |
Insert | 45 | Klíč INS. |
J | 74 | Klávesa J. |
JunjaMode | 23 | Klávesa režimu Junja editoru IME. |
K | 75 | Klíč K. |
KanaMode | 21 | Klávesa režimu Kana editoru IME. |
KanjiMode | 25 | Klávesa režimu Kanji editoru IME. |
KeyCode | 65535 | Bitová maska extrahuje kód klíče z hodnoty klíče. |
L | 76 | Klávesa L. |
LaunchApplication1 | 182 | Spuštění aplikace jeden klíč. |
LaunchApplication2 | 183 | Dvěma klíči spuštění aplikace. |
LaunchMail | 180 | Klávesa pro spuštění pošty. |
LButton | 1 | Levé tlačítko myši. |
LControlKey | 162 | Levá klávesa CTRL |
Left | 37 | Klávesa ŠIPKA VLEVO. |
LineFeed | 10 | Klíč LINEFEED. |
LMenu | 164 | Levá klávesa ALT |
LShiftKey | 160 | Levá klávesa SHIFT. |
LWin | 91 | Levá klávesa s logem Windows (Microsoft Natural Keyboard). |
M | 77 | Klávesa M. |
MButton | 4 | Prostřední tlačítko myši (třítlačítková myš) |
MediaNextTrack | 176 | Klávesa další stopy média. |
MediaPlayPause | 179 | Klávesa pozastavit přehrávání médií. |
MediaPreviousTrack | 177 | Předchozí klávesa sledování média. |
MediaStop | 178 | Klávesa Stop média. |
Menu | 18 | Klávesa ALT. |
Modifiers | -65536 | Bitová maska extrahovat modifikátory z hodnoty klíče. |
Multiply | 106 | Klíč násobení |
N | 78 | Klávesa N. |
Next | 34 | Klávesa PAGE DOWN. |
NoName | 252 | Konstanta vyhrazená pro budoucí použití. |
None | 0 | Nestisknutá žádná klávesa. |
NumLock | 144 | Klávesa NUM LOCK. |
NumPad0 | 96 | Klávesa 0 na numerické klávesnici |
NumPad1 | 97 | Klávesa 1 na numerické klávesnici. |
NumPad2 | 98 | Klávesa 2 na numerické klávesnici. |
NumPad3 | 99 | Klávesa 3 na numerické klávesnici. |
NumPad4 | 100 | Klávesa 4 na numerické klávesnici. |
NumPad5 | 101 | Klávesa 5 na numerické klávesnici. |
NumPad6 | 102 | Klávesa 6 na numerické klávesnici. |
NumPad7 | 103 | Klávesa 7 na numerické klávesnici. |
NumPad8 | 104 | Klávesa 8 na numerické klávesnici. |
NumPad9 | 105 | Klávesa 9 na numerické klávesnici. |
O | 79 | Klíč O. |
Oem1 | 186 | Klíč OEM 1. |
Oem102 | 226 | Klíč OEM 102. |
Oem2 | 191 | Klíč OEM 2. |
Oem3 | 192 | Klíč OEM 3. |
Oem4 | 219 | Klíč OEM 4. |
Oem5 | 220 | Klíč OEM 5. |
Oem6 | 221 | Klíč OEM 6. |
Oem7 | 222 | Klíč OEM 7. |
Oem8 | 223 | Klíč OEM 8. |
OemBackslash | 226 | Lomená závorka nebo zpětné lomítko OEM na klávesnici klávesy RT 102. |
OemClear | 254 | Klávesa CLEAR. |
OemCloseBrackets | 221 | Klávesa pravá hranatá závorka výrobce OEM na klávesnici amerického standardu. |
Oemcomma | 188 | Klávesa čárky OEM na libovolné klávesnici země/oblasti |
OemMinus | 189 | Klávesa mínus OEM na libovolné klávesnici země/oblasti. |
OemOpenBrackets | 219 | Klávesa OEM s otevřenou závorkou na standardní klávesnici v USA. |
OemPeriod | 190 | Klávesa tečky OEM na libovolné klávesnici země/oblasti. |
OemPipe | 220 | Klávesa kanálu výrobce OEM na standardní klávesnici v USA. |
Oemplus | 187 | Klávesa OEM plus na libovolné klávesnici země/oblasti |
OemQuestion | 191 | Otazník výrobce OEM na standardní americké klávesnici. |
OemQuotes | 222 | Jednoduchá/dvojitá uvozovka od výrobce OEM na standardní klávesnici v USA. |
OemSemicolon | 186 | Klávesa OEM Středník na standardní americké klávesnici. |
Oemtilde | 192 | Tilda od výrobce OEM na standardní americké klávesnici. |
P | 80 | Klávesa P. |
Pa1 | 253 | Klíč PA1. |
Packet | 231 | Používá se k předávání znaků Unicode, jako by se jednalo o stisknutí kláves. Hodnota Klíče paketu je nízké slovo hodnoty 32bitového virtuálního klíče používaného pro metody zadávání bez klávesnice. |
PageDown | 34 | Klávesa PAGE DOWN. |
PageUp | 33 | Klávesa PAGE UP. |
Pause | 19 | Klávesa PAUSE. |
Play | 250 | Klávesa PLAY. |
42 | Klávesa PRINT. |
|
PrintScreen | 44 | Klávesa PRINT SCREEN. |
Prior | 33 | Klávesa PAGE UP. |
ProcessKey | 229 | Klíč PROCESU. |
Q | 81 | Klávesa Q. |
R | 82 | Klávesa R. |
RButton | 2 | Pravé tlačítko myši |
RControlKey | 163 | Pravá klávesa CTRL |
Return | 13 | Klávesa RETURN. |
Right | 39 | Klávesa ŠIPKA VPRAVO. |
RMenu | 165 | Pravá klávesa ALT |
RShiftKey | 161 | Pravá klávesa SHIFT |
RWin | 92 | Pravá klávesa s logem Windows (Microsoft Natural Keyboard). |
S | 83 | Klávesa S. |
Scroll | 145 | Klávesa SCROLL LOCK. |
Select | 41 | Klávesa SELECT. |
SelectMedia | 181 | Výběr klávesy média. |
Separator | 108 | Klávesa oddělovače. |
Shift | 65536 | Modifikační klávesa SHIFT |
ShiftKey | 16 | Klávesa SHIFT. |
Sleep | 95 | Klávesa spánku počítače. |
Snapshot | 44 | Klávesa PRINT SCREEN. |
Space | 32 | Klávesa MEZERNÍK. |
Subtract | 109 | Odečítá klíč. |
T | 84 | Klávesa T. |
Tab | 9 | Klávesa TAB. |
U | 85 | Klávesa U. |
Up | 38 | Klávesa ŠIPKA NAHORU. |
V | 86 | Klávesa V. |
VolumeDown | 174 | Klávesa pro snížení hlasitosti. |
VolumeMute | 173 | Klávesa pro ztlumení hlasitosti. |
VolumeUp | 175 | Klávesa pro zvýšení hlasitosti. |
W | 87 | Klávesa W. |
X | 88 | Klávesa X. |
XButton1 | 5 | První x tlačítko myši (pětitlačítková myš). |
XButton2 | 6 | Druhé x tlačítko myši (pětitlačítko myši). |
Y | 89 | Klávesa Y. |
Z | 90 | Klávesa Z. |
Zoom | 251 | Klávesa ZOOM. |
Příklady
Následující příklad kódu používá KeyDown událost k určení typu znaku zadaného do ovládacího prvku.
// 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
Poznámky
Třída Keys obsahuje konstanty pro zpracování vstupu z klávesnice. Členy výčtu Klíče se skládají z kódu klíče a sady modifikátorů sloučených do jedné celočíselné hodnoty. V aplikačním programovacím rozhraní (API) Win32 má hodnota klíče dvě poloviny, přičemž bity ve vysokém pořadí obsahují kód klíče (který je stejný jako kód virtuálního klíče Windows) a bity nízkého pořadí představující modifikátory klíčů, jako jsou klávesy SHIFT, CONTROL a ALT.
Upozornění
Nepoužívejte hodnoty v tomto výčtu pro kombinované bitové operace. Hodnoty ve výčtu se vzájemně nevylučují.
Poznámka
Tento výčet neposkytuje žádný způsob, jak otestovat, zda jsou klávesy CAPS LOCK nebo NUM LOCK aktuálně aktivovány. Pokud chcete zjistit, jestli jsou tyto klíče aktivované, můžete použít jednu z následujících technik:
IsKeyLocked Zavolejte metodu Control třídy .
K tomu použijte funkce
GetKeyState
rozhraní API systému Windows ,GetAsyncKeyState
neboGetKeyboardState
definované v user32.dll. Další informace o volání nativních funkcí naleznete v tématu Používání nespravovaných funkcí knihovny DLL.
Následující tabulka uvádí hodnoty kódu klíčů představované dvěma výčtovými hodnotami, které představují jak obecné klíče výrobce OEM (Original Equipment Manufacturer), tak konkrétnější přidružení klávesnice pro USA.
Šestnáctková hodnota | Klávesnice pro USA | Obecné OEM |
---|---|---|
BA | OemSemicolon | Oem1 |
BF | OemQuestion | Oem2 |
C0 | Oemtilda | Oem3 |
DB | OemOpenBrackets | Oem4 |
DC | OemPipe | Oem5 |
DD | OemCloseBrackets | Oem6 |
DE | OemQuotes | OEM7 |
E2 | OemBackslash | Oem102 |
Upozornění
Pro rozhraní .NET Framework 2.0 byl přidán člen IMEAccept, který nahrazuje předchozí položku IMEAceept, která byla zadána nesprávně. Starší verze byla zachována kvůli zpětné kompatibilitě, ale v budoucích verzích rozhraní .NET Framework může být odstraněna.