티스토리 뷰
목차
간단한 파이썬 gui 프로그래밍 예제입니다. tkinter 활용했으며 결과 화면은 아래와 같습니다.
처음 실행하면 입력창, 버튼, 라벨이 보입니다.
간단한 gui 디자인 강좌
파이썬 gui 프로그래밍 예제 설명
- 입력창 기본 값 : hello python
- 라밸 기본 값 : empty
- 버튼 기본 값 : 클릭
이 상태에서 클릭 버튼을 누르면 입력창의 텍스트 hello python + [button] 이 라벨 값으로 변경됩니다.
간단한 gui 디자인 강좌
파이썬 gui 창에서 키보드 엔터를 누르면 hello python + [return] 값이 라벨값으로 변경됩니다.
간단한 gui 디자인 강좌
전체 소스는 아래 첨부 파일 참조하세요.
전체 소스는 아래에 있습니다.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 | import tkinter class SimpleApp(tkinter.Tk): def __init__(self, parent): tkinter.Tk.__init__(self, parent) self.parent = parent self.initialize() def initialize(self): self.grid() # 입력창 (파이썬 gui) self.entryValue = tkinter.StringVar() self.entry = tkinter.Entry(self, textvariable=self.entryValue) self.entry.grid(column=0, row=0, sticky='WE') self.entry.bind('<Return>', self.onPressEnter) # 버튼 button = tkinter.Button(self, text='클릭', command=self.onButtonClick) button.grid(column=1, row=0) # 이름표 self.labelValue = tkinter.StringVar() self.label = tkinter.Label(self, fg='white', bg='orange', textvariable=self.labelValue) self.label.grid(column=0, row=1, columnspan=2, sticky='EW') # 초기값 self.entryValue.set('hello python') self.labelValue.set('empty') self.entry.focus_set() self.entry.select_range(0, tkinter.END) self.geometry('200x200+500+300') def onPressEnter(self, event): print('enter') self.labelValue.set(self.entryValue.get() + '[return]') self.entryValue.set('') def onButtonClick(self): print('button') self.labelValue.set(self.entryValue.get() + '[button]') app = SimpleApp(None) app.title = '그래픽 유저 인터페이스' app.mainloop() | cs |
15~18번 라인 : 입력창
18번 라인에서 엔터<Return> 입력에 대한 이벤트를 설정합니다.
21~23번 라인 : 버튼
버튼 선언과 함께 Click 이벤트를 설정합니다.
26~29번 라인 : 라벨 (이름표)
27~28번 라인에서 색상을 설정하고, 29번 라인에서 행과 열, 크기를 설정합니다.
32~38번 라인 : 초기화
파이썬 gui 요소들의 초기 값을 설정합니다. 38번 라인에서 창 크기를 지정합니다.
40~44번 라인 : 키보드 엔터<Return> 이벤트
엔터가 입력되면 입력창 텍스트에 [return] 문자열을 더한 결과를 라벨 값으로 설정합니다.
46~49번 라인 : 버튼 클릭 이벤트
버튼 클릭하면 입력창 텍스트에 [button] 문자열을 더한 결과를 라벨 값으로 설정합니다.
관련 글
▷ 파이썬 gui 터틀 그리기 예제, 별 삼각형 사각형 star triangle
▷ [Qt프로그래밍] Thread를 GUI에서 효율적으로 사용 방법 [Qt5]
▷ C# 그림판 - GDI 코딩배우기 (닷넷 윈폼 GUI 프로그래밍 강좌)
ⓒ written by vicddory