Page 34 - 파이썬으로 배우는 컴퓨팅사고 도서 미리보기
P. 34
CHAPTER 9? 기술(Technology) 205
함수 기능 인수
onkey(f, key) 키를 누르는 띄는 이벤트 처리
onkeypress(f, key) 키를 누르고 있는 이벤트 처리 f: 콜백 함수
onkeyrelease(f, key) 누르고 있던 키를 놓는 이벤트 처리 key: 키 이름(예:"a")
키 이름(key name)은 키보드의 각 키에 이름을 부여한 것이며, 대표적인 키 이름들은 다
음과 같다. 보다 더 다양한 키 이름들은 ‘부록 A.4 파이썬 키보드 키 이름’을 참고하거나,
http://www.tcl.tk/man/tcl8.4/TkCmd/keysyms.htm, http://infohost.nmt.edu/tcc/
help/pubs/tkinter/web/key-names.html 페이지를 참고하기 바란다.
키 키 이름 키 키 이름 키 키 이름
space , comma 오른쪽 방향키 Right
1~0 1~0 . period Return
a~z a~z ; semicolon Enter Tab
dollar : colon Tab Control_L
$ plus 위로 방향키 왼쪽 Ctrl Control_R
+ minus 아래로 방향키 Up 오른쪽 Ctrl Shift_L
- slash 왼쪽 방향키 Down 왼쪽 Shift Shift_R
/ Left 오른쪽 Shift
위의 세 함수들을 이용하여 “a” 키에 대한 각각의 키보드 이벤트를 처리하는 예제는 다
음과 같다. 실행 결과의 “aas_s_s_s^”에서 onkey() 함수에 의해서 “aa”가 출력이 되었고,
onkeypress() 함수에 의해서 “s_s_s_”, onkeyrelease() 함수에 의해서 “s^”가 출력이 되었다.
import turtle as t
def print_key(char):
print(char, end=””)
def key_a():
print_key(“a”)
def key_sp():
print_key(“s_”)
def key_sr():
print_key(“s^”)