curses 강좌 #3.2 - keypad input (특수키 입력)
키보드 특수키 입력을 받기위한 예제입니다.
08번째 줄 keypad() 함수를 통해 키패드의 입력을 활성화 합니다.
- stdscr는 최상위 윈도우 전역값 (나중에 윈도우 강좌에서 설명), 두번째 인자 TRUE를 통해 활성화합니다.
10번째 줄
- KEY_F(1)은 F1 키를 의미합니다. 소스상에서 F1 키가 입력되면 프로그램을 종료하는 조건이 됩니다.
11번째 줄 clear() 함수를 통하여 화면을 지웁니다.
13 ~ 26번째 줄
- 각 키보드 입력에 따라 각 메세지를 출력합니다.
아래를 보시면 각 키들의 이름을 확인할 수 있습니다.
getch() 결과값 상수
Name | Key name |
KEY_BREAK | Break key |
KEY_DOWN | The four arrow keys . . . |
KEY_UP | |
KEY_LEFT | |
KEY_RIGHT | |
KEY_HOME | Home key (upward+left arrow) |
KEY_BACKSPACE | Backspace |
KEY_F0 | Function keys; space for 64 keys is reserved. |
KEY_F(n) | For 0 ≤ n ≤ 63 |
KEY_DL | Delete line |
KEY_IL | Insert line |
KEY_DC | Delete character |
KEY_IC | Insert char or enter insert mode |
KEY_EIC | Exit insert char mode |
KEY_CLEAR | Clear screen |
KEY_EOS | Clear to end of screen |
KEY_EOL | Clear to end of line |
KEY_SF | Scroll 1 line forward |
KEY_SR | Scroll 1 line backward (reverse) |
KEY_NPAGE | Next page |
KEY_PPAGE | Previous page |
KEY_STAB | Set tab |
KEY_CTAB | Clear tab |
KEY_CATAB | Clear all tabs |
KEY_ENTER | Enter or send |
KEY_SRESET | Soft (partial) reset |
KEY_RESET | Reset or hard reset |
KEY_PRINT | Print or copy |
KEY_LL | Home down or bottom (lower left). Keypad is arranged like this: (Row 1) A1 up A3 (Row 2) left B2 right (Row 3) C1 down C3 |
KEY_A1 | Upper left of keypad |
KEY_A3 | Upper right of keypad |
KEY_B2 | Center of keypad |
KEY_C1 | Lower left of keypad |
KEY_C3 | Lower right of keypad |
KEY_BTAB | Back tab key |
KEY_BEG | Beg(inning) key |
KEY_CANCEL | Cancel key |
KEY_CLOSE | Close key |
KEY_COMMAND | Cmd (command) key |
KEY_COPY | Copy key |
KEY_CREATE | Create key |
KEY_END | End key |
KEY_EXIT | Exit key |
KEY_FIND | Find key |
KEY_HELP | Help key |
KEY_MARK | Mark key |
KEY_MESSAGE | Message key |
KEY_MOVE | Move key |
KEY_NEXT | Next object key |
KEY_OPEN | Open key |
KEY_OPTIONS | Options key |
KEY_PREVIOUS | Previous object key |
KEY_REDO | Redo key |
KEY_REFERENCE | Reference key |
KEY_REFRESH | Refresh key |
KEY_REPLACE | Replace key |
KEY_RESTART | Restart key |
KEY_RESUME | Resume key |
KEY_SAVE | Save key |
KEY_SBEG | Shifted beginning key |
KEY_SCANCEL | Shifted cancel key |
KEY_SCOMMAND | Shifted command key |
KEY_SCOPY | Shifted copy key |
KEY_SCREATE | Shifted create key |
KEY_SDC | Shifted delete char key |
KEY_SDL | Shifted delete line key |
KEY_SELECT | Select key |
KEY_SEND | Shifted end key |
KEY_SEOL | Shifted clear line key |
KEY_SEXIT | Shifted exit key |
KEY_SFIND | Shifted find key |
KEY_SHELP | Shifted help key |
KEY_SHOME | Shifted home key |
KEY_SIC | Shifted input key |
KEY_SLEFT | Shifted left arrow key |
KEY_SMESSAGE | Shifted message key |
KEY_SMOVE | Shifted move key |
KEY_SNEXT | Shifted next key |
KEY_SOPTIONS | Shifted options key |
KEY_SPREVIOUS | Shifted prev key |
KEY_SPRINT | Shifted print key |
KEY_SREDO | Shifted redo key |
KEY_SREPLACE | Shifted replace key |
KEY_SRIGHT | Shifted right arrow |
KEY_SRSUME | Shifted resume key |
KEY_SSAVE | Shifted save key |
KEY_SSUSPEND | Shifted suspend key |
KEY_SUNDO | Shifted undo key |
KEY_SUSPEND | Suspend key |
KEY_UNDO | Undo key |
이상입니다. 끝~
댓글
댓글 쓰기