Keys 열거형
정의
중요
일부 정보는 릴리스되기 전에 상당 부분 수정될 수 있는 시험판 제품과 관련이 있습니다. Microsoft는 여기에 제공된 정보에 대해 어떠한 명시적이거나 묵시적인 보증도 하지 않습니다.
키 코드와 한정자를 지정합니다.
이 열거형은 멤버 값의 비트 조합을 지원합니다.
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
- 상속
- 특성
필드
A | 65 | A 키입니다. |
Add | 107 | 추가 키입니다. |
Alt | 262144 | Alt 보조키입니다. |
Apps | 93 | 애플리케이션 키(Microsoft Natural Keyboard)입니다. |
Attn | 246 | ATTN 키입니다. |
B | 66 | B 키입니다. |
Back | 8 | 백스페이스 키입니다. |
BrowserBack | 166 | 브라우저 뒤로 키입니다. |
BrowserFavorites | 171 | 브라우저 즐겨찾기 키입니다. |
BrowserForward | 167 | 브라우저 앞으로 키입니다. |
BrowserHome | 172 | 브라우저 홈 키입니다. |
BrowserRefresh | 168 | 브라우저 새로 고침 키입니다. |
BrowserSearch | 170 | 브라우저 검색 키입니다. |
BrowserStop | 169 | 브라우저 중지 키입니다. |
C | 67 | C 키입니다. |
Cancel | 3 | 취소 키입니다. |
Capital | 20 | CAPS LOCK 키입니다. |
CapsLock | 20 | CAPS LOCK 키입니다. |
Clear | 12 | 지우기 키입니다. |
Control | 131072 | Ctrl 보조키입니다. |
ControlKey | 17 | CTRL 키입니다. |
Crsel | 247 | CRSEL 키입니다. |
D | 68 | D 키입니다. |
D0 | 48 | 0 키입니다. |
D1 | 49 | 1 키입니다. |
D2 | 50 | 2 키입니다. |
D3 | 51 | 3 키입니다. |
D4 | 52 | 4 키입니다. |
D5 | 53 | 5 키입니다. |
D6 | 54 | 6 키입니다. |
D7 | 55 | 7 키입니다. |
D8 | 56 | 8 키입니다. |
D9 | 57 | 9 키입니다. |
Decimal | 110 | 10진 키입니다. |
Delete | 46 | DEL 키입니다. |
Divide | 111 | 나누기 키입니다. |
Down | 40 | 아래쪽 화살표 키입니다. |
E | 69 | E 키입니다. |
End | 35 | <End> 키입니다. |
Enter | 13 | <Enter> 키입니다. |
EraseEof | 249 | ERASE EOF 키입니다. |
Escape | 27 | <ESC> 키입니다. |
Execute | 43 | 실행 키입니다. |
Exsel | 248 | EXSEL 키입니다. |
F | 70 | F 키입니다. |
F1 | 112 | F1 키입니다. |
F10 | 121 | F10 키입니다. |
F11 | 122 | F11 키입니다. |
F12 | 123 | F12 키입니다. |
F13 | 124 | F13 키입니다. |
F14 | 125 | F14 키입니다. |
F15 | 126 | F15 키입니다. |
F16 | 127 | F16 키입니다. |
F17 | 128 | F17 키입니다. |
F18 | 129 | F18 키입니다. |
F19 | 130 | F19 키입니다. |
F2 | 113 | F2 키입니다. |
F20 | 131 | F20 키입니다. |
F21 | 132 | F21 키입니다. |
F22 | 133 | F22 키입니다. |
F23 | 134 | F23 키입니다. |
F24 | 135 | F24 키입니다. |
F3 | 114 | F3 키입니다. |
F4 | 115 | F4 키입니다. |
F5 | 116 | F5 키입니다. |
F6 | 117 | F6 키입니다. |
F7 | 118 | F7 키입니다. |
F8 | 119 | F8 키입니다. |
F9 | 120 | F9 키입니다. |
FinalMode | 24 | 입력기 최종 모드 키입니다. |
G | 71 | G 키입니다. |
H | 72 | H 키입니다. |
HanguelMode | 21 | 입력기 한글 모드 키입니다. 호환성을 위해 유지됩니다. |
HangulMode | 21 | IME 한글 모드 키입니다. |
HanjaMode | 25 | IME 한자 모드 키입니다. |
Help | 47 | 도움말 키입니다. |
Home | 36 | HOME 키입니다. |
I | 73 | I 키입니다. |
IMEAccept | 30 | 입력기 적용 키이며 IMEAceept를 대신합니다. |
IMEAceept | 30 | 입력기 적용 키입니다. 사용되지 않으며 IMEAccept를 대신 사용합니다. |
IMEConvert | 28 | 입력기 변환 키입니다. |
IMEModeChange | 31 | 입력기 모드 변경 키입니다. |
IMENonconvert | 29 | 입력기 변환 안 함 키입니다. |
Insert | 45 | INS 키입니다. |
J | 74 | J 키입니다. |
JunjaMode | 23 | IME 전자 모드 키입니다. |
K | 75 | K 키입니다. |
KanaMode | 21 | IME 가나 모드 키입니다. |
KanjiMode | 25 | IME 간지 모드 키입니다. |
KeyCode | 65535 | 키 값에서 키 코드를 추출하는 비트 마스크입니다. |
L | 76 | L 키입니다. |
LaunchApplication1 | 182 | 애플리케이션 1 시작 키입니다. |
LaunchApplication2 | 183 | 애플리케이션 2 시작 키입니다. |
LaunchMail | 180 | 메일 실행 키입니다. |
LButton | 1 | 마우스 왼쪽 단추입니다. |
LControlKey | 162 | 왼쪽 <Ctrl> 키입니다. |
Left | 37 | 왼쪽 화살표 키입니다. |
LineFeed | 10 | 줄 바꿈 키입니다. |
LMenu | 164 | 왼쪽 <Alt> 키입니다. |
LShiftKey | 160 | 왼쪽 Shift 키입니다. |
LWin | 91 | 왼쪽 Windows 로고 키(Microsoft Natural 키보드)입니다. |
M | 77 | M 키입니다. |
MButton | 4 | 마우스 가운데 단추입니다(3단추 마우스). |
MediaNextTrack | 176 | 미디어 다음 트랙 키입니다. |
MediaPlayPause | 179 | 미디어 재생 일시 중지 키입니다. |
MediaPreviousTrack | 177 | 미디어 이전 트랙 키입니다. |
MediaStop | 178 | 미디어 중지 키입니다. |
Menu | 18 | Alt 키입니다. |
Modifiers | -65536 | 키 값에서 한정자를 추출하는 비트 마스크입니다. |
Multiply | 106 | 곱하기 키입니다. |
N | 78 | N 키입니다. |
Next | 34 | <Page Down> 키입니다. |
NoName | 252 | 나중에 사용하기 위해 예약된 상수입니다. |
None | 0 | 키를 누르지 않았습니다. |
NumLock | 144 | NUM LOCK 키입니다. |
NumPad0 | 96 | 숫자 키패드의 0 키입니다. |
NumPad1 | 97 | 숫자 키패드의 1 키입니다. |
NumPad2 | 98 | 숫자 키패드의 2 키입니다. |
NumPad3 | 99 | 숫자 키패드의 3 키입니다. |
NumPad4 | 100 | 숫자 키패드의 4 키입니다. |
NumPad5 | 101 | 숫자 키패드의 5 키입니다. |
NumPad6 | 102 | 숫자 키패드의 6 키입니다. |
NumPad7 | 103 | 숫자 키패드의 7 키입니다. |
NumPad8 | 104 | 숫자 키패드의 8 키입니다. |
NumPad9 | 105 | 숫자 키패드의 9 키입니다. |
O | 79 | O 키입니다. |
Oem1 | 186 | OEM 1 키입니다. |
Oem102 | 226 | OEM 102 키입니다. |
Oem2 | 191 | OEM 2 키입니다. |
Oem3 | 192 | OEM 3 키입니다. |
Oem4 | 219 | OEM 4 키입니다. |
Oem5 | 220 | OEM 5 키입니다. |
Oem6 | 221 | OEM 6 키입니다. |
Oem7 | 222 | OEM 7 키입니다. |
Oem8 | 223 | OEM 8 키입니다. |
OemBackslash | 226 | RT 102 키 키보드의 OEM 꺾쇠괄호 또는 백슬래시 키입니다. |
OemClear | 254 | 지우기 키입니다. |
OemCloseBrackets | 221 | US 표준 키보드의 OEM 닫는 괄호 키입니다. |
Oemcomma | 188 | 국가/지역별 키보드의 OEM 쉼표 키입니다. |
OemMinus | 189 | 국가/지역별 키보드의 OEM 빼기 키입니다. |
OemOpenBrackets | 219 | US 표준 키보드의 OEM 여는 괄호 키입니다. |
OemPeriod | 190 | 국가/지역별 키보드의 OEM 마침표 키입니다. |
OemPipe | 220 | US 표준 키보드의 OEM 파이프 키입니다. |
Oemplus | 187 | 국가/지역별 키보드의 OEM 더하기 키입니다. |
OemQuestion | 191 | US 표준 키보드의 OEM 물음표 키입니다. |
OemQuotes | 222 | US 표준 키보드의 OEM 작은/큰따옴표 키입니다. |
OemSemicolon | 186 | US 표준 키보드의 OEM 세미콜론 키입니다. |
Oemtilde | 192 | US 표준 키보드의 OEM 물결표 키입니다. |
P | 80 | P 키입니다. |
Pa1 | 253 | PA1 키입니다. |
Packet | 231 | 유니코드 문자를 키 입력인 것처럼 전달할 때 사용합니다. 패킷 키 값은 키보드가 아닌 입력 방법에 사용되는 32비트 가상 키 값의 하위 워드입니다. |
PageDown | 34 | <Page Down> 키입니다. |
PageUp | 33 | <Page Up> 키입니다. |
Pause | 19 | <Pause> 키입니다. |
Play | 250 | 재생 키입니다. |
42 | 인쇄 키입니다. |
|
PrintScreen | 44 | <Print Screen> 키입니다. |
Prior | 33 | <Page Up> 키입니다. |
ProcessKey | 229 | 프로세스 키입니다. |
Q | 81 | Q 키입니다. |
R | 82 | R 키입니다. |
RButton | 2 | 마우스 오른쪽 단추입니다. |
RControlKey | 163 | 오른쪽 <Ctrl> 키입니다. |
Return | 13 | 리턴 키입니다. |
Right | 39 | 오른쪽 화살표 키입니다. |
RMenu | 165 | 오른쪽 <Alt> 키입니다. |
RShiftKey | 161 | 오른쪽 Shift 키입니다. |
RWin | 92 | 오른쪽 Windows 로고 키(Microsoft Natural 키보드)입니다. |
S | 83 | S 키입니다. |
Scroll | 145 | Scroll Lock 키입니다. |
Select | 41 | 선택 키입니다. |
SelectMedia | 181 | 미디어 선택 키입니다. |
Separator | 108 | 구분 키입니다. |
Shift | 65536 | Shift 보조키입니다. |
ShiftKey | 16 | Shift 키입니다. |
Sleep | 95 | 컴퓨터 절전 키입니다. |
Snapshot | 44 | <Print Screen> 키입니다. |
Space | 32 | 스페이스바 키입니다. |
Subtract | 109 | 빼기 키입니다. |
T | 84 | T 키입니다. |
Tab | 9 | <Tab> 키입니다. |
U | 85 | U 키입니다. |
Up | 38 | 위쪽 화살표 키입니다. |
V | 86 | V 키입니다. |
VolumeDown | 174 | 볼륨 작게 키입니다. |
VolumeMute | 173 | 볼륨 음소거 키입니다. |
VolumeUp | 175 | 볼륨 크게 키입니다. |
W | 87 | W 키입니다. |
X | 88 | X 키입니다. |
XButton1 | 5 | 첫 번째 x 마우스 단추입니다(5단추 마우스). |
XButton2 | 6 | 두 번째 x 마우스 단추입니다(5단추 마우스). |
Y | 89 | Y 키입니다. |
Z | 90 | Z 키입니다. |
Zoom | 251 | 확대/축소 키입니다. |
예제
다음 코드 예제에서는 이벤트를 사용 하 여 KeyDown 컨트롤에 입력 된 문자의 형식을 확인 합니다.
// 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
설명
클래스에는 Keys 키보드 입력을 처리하기 위한 상수가 포함되어 있습니다. 키 열거형의 멤버는 키 코드와 단일 정수 값으로 결합된 한정자 집합으로 구성됩니다. Win32 API (애플리케이션 프로그래밍 인터페이스)는 키 값에 반 합니다 (Windows 가상 키 코드와 동일) 키 코드를 포함 하는 상위 비트와 ALT, CONTROL, SHIFT 등 키 한정자를 나타내는 하위 비트 키입니다.
경고
결합된 비트 연산에는 이 열거형의 값을 사용하지 마세요. 열거형의 값은 상호 배타적이지 않습니다.
참고
이 열거형은 CAPS LOCK 또는 NUM LOCK 키가 현재 활성화되어 있는지 여부를 테스트할 수 있는 방법을 제공하지 않습니다. 다음 기술 중 하나를 사용하여 이러한 키가 활성화되었는지 확인할 수 있습니다.
IsKeyLocked 클래스의 Control 메서드를 호출합니다.
더 세부적인 제어를 위해 user32.dll 정의된 Windows API 함수
GetKeyState
,GetAsyncKeyState
또는GetKeyboardState
를 사용하여 이 작업을 수행합니다. 네이티브 함수를 호출하는 방법에 대한 자세한 내용은 관리되지 않는 DLL 함수 소비를 참조하세요.
다음 표에서는 OEM(일반 원본 장비 제조업체) 키와 보다 구체적인 미국 키보드 연결을 나타내는 두 개의 열거형 값으로 표시되는 키 코드 값을 보여 줍니다.
16 진수 값 | 미국식 키보드 | 일반 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 |
주의
.NET Framework 2.0의 경우 이전 항목인 IMEAceept를 대체하는 멤버 IMEAccept가 추가되었습니다. 이 항목의 철자가 잘못되었습니다. 이전 버전은 이전 버전과의 호환성을 위해 유지되었지만 이후 버전의 .NET Framework 삭제될 수 있습니다.
적용 대상
추가 정보
.NET