728x90
반응형
SMALL
Tkinter
tkinter module은 Tcl / Tk 툴킷을 python에서 사용하기 위한 인터페이스 module이다. Tcl은 python과 같은 script 언어이고 Tk는 Tcl을 위한 GUI 툴 킷이다.
from tkinter import *
root = Tk()
label = Label(root, text='Hello World')
label.pack()
root.mainloop()
- Label(root, text='Hello World') : Label 클래스의 첫번째 인수로 root를 사용했는데, 이것의 의미는 root창에 포함되는 콤포넌트로 생성하겠다는 의미이다. - label.pack() : label 객체를 창에 표시하는 역할을 한다. - root.mainloop() : root창을 event loop에 들어가게 한다. mainloop에 의해 root창은 종료되지 않고 버튼 클릭 등의 이벤트를 수신하거나 사용자의 입력을 처리하는 등의 일을 계속해서 수행할 수 있다. |
tkinter 컴포넌트
- 리스트박스 (ListBox) - 블로그의 목록을 보여준다. - 라벨 (Label) - "제목"이라는 라벨을 표시한다. - 엔트리 (Entry) - 제목을 보여주고 입력할 수 있다. - 텍스트 (Text) - 내용을 보여주고 입력할 수 있다. - 버튼 (Button) - 블로그를 "생성", "수정", "삭제"하는 버튼이다. |
리스트박스 (ListBox)
listbox는 목록처럼 일정한 순서를 가진 여러개의 데이터를 표시할 수 있는 컴포넌트이다.
from tkinter import *
root = Tk()
listbox = Listbox(root)
listbox.pack()
for i in ['1', '2', '3', '4']:
listbox.insert(END, i)
root.mainloop()
엔트리 (Entry)
entry는 텍스트 입력을 받거나 보여주기 위해 사용하는 컴포넌트이다. 주로 여러줄이 아닌 한줄로 구성되는 문자열을 처리할 때 사용되며 여러줄의 문자열을 처리하기 위해서는 곧 설명할 text 컴포넌트를 사용한다.
from tkinter import *
root = Tk()
entry = Entry(root)
entry.pack()
entry.insert(0, "Hello world")
root.mainloop()
# entry.delete(0, END) # entry에 입력된 모든 내용을 삭제
엔트리 (Entry)
text 컴포넌트는 entry와 거의 동일하다. 차이점은 여러줄의 문자열을 처리할수 있다는 점이다.
from tkinter import *
root = Tk()
text = Text(root)
text.pack()
data = '''GOAT LAB
Tkinter python'''
text.insert(1.0, data)
root.mainloop()
버튼 (Button)
button은 클릭했을 때 특정 함수를 실행하기 위해 사용하는 컴포넌트이다.
from tkinter import *
root = Tk()
b1 = Button(root, text='test')
b1.pack()
def btn_click(event):
print("button clicked")
b1.bind('<Button-1>', btn_click)
root.mainloop()
728x90
반응형
LIST
'Programming > Python' 카테고리의 다른 글
[Python] glob (파일 이름 일람 취득) (0) | 2021.12.23 |
---|---|
16. Tkinter 고급 위젯 (0) | 2021.12.15 |
14. 데이터베이스 (Database) (0) | 2021.12.15 |
13. 네트워크 (0) | 2021.12.15 |
12. XML (Extensible Markup Language) (0) | 2021.12.15 |