GUI 프로그래밍 라이브러리 tkinter
표준 파이썬 인터페이스. 창 형식의 프로그램 작성용 라이브러리
설치) 터미널에서 실행
pip install tk
모듈사용)
import tkinter
객체생성)
식별자 = tkinter.Tk()
프로그램 실행)
식별자.mainloop()
기본 컴포넌트(위젯)
1) Label : 문자열 출력 컴포넌트
2) Button : 버튼
3) Entry : 입력 칸
4) Listbox : 목록
5) Checkbutton : 다중선택
6) Radiobutton : 단일선택
위젯 배치용 기본 함수 : pack()
fg = 글자색
bg = 바탕색
import tkinter
window = tkinter.Tk() #윈도우 객체 생성
# 창이름 설정
window.title('GUI 프로그램')
# 창 크기 및 위치 설정
#너비x높이+x좌표+y좌표
window.geometry('640x480+100+200')
# 창 크기 고정
# False : 크기 고정(변경X), True : 크기 변경 가능
#좌/우(True/False), 상/하(True/False)
window.resizable(False, False)
# 실행
window.mainloop()
from tkinter import *
from tkinter import messagebox
window = Tk() #윈도우 객체 생성
# 창이름 설정
window.title('GUI 프로그램')
# 창 크기 및 위치 설정
#너비x높이+x좌표+y좌표
window.geometry('600x600+100+200')
# 창 크기 고정
# False : 크기 고정(변경X), True : 크기 변경 가능
#좌/우(True/False), 상/하(True/False)
window.resizable(False, False)
text = ""
# 버튼 이벤트 처리 함수
def onClick():
text= entry1.get()
print(type(text))
messagebox.showinfo("알람", text)
def sel_chk():
if ck1val.get() == 1:
messagebox.showinfo('선택1', '강아지를 선택하셨습니다!')
elif ck2val.get() == 1:
messagebox.showinfo('선택2', '고양이를 선택하셨습니다.')
elif ck3val.get() == 1:
messagebox.showinfo('선택3', '병아리를 선택하셨습니다.')
def sel_rd():
if rd_val.get() == 0:
messagebox.showinfo('선택1', '자장면을 선택하였습니다.')
elif rd_val.get() == 1:
messagebox.showinfo('선택2', '짬뽕을 선택하셨습니다.')
elif rd_val.get() == 2:
messagebox.showinfo('선택3', '탕수육을 선택하셨습니다.')
# 위젯 출력
lable1 = Label(window, text='메모장 만들기!', font=10, height=2, fg='DarkOrange1')
lable1.pack()
# 버튼
btn1 = Button(window, text='버튼', width=10, bg='skyblue1', command=onClick)
btn1.pack()
# 입력
entry1 = Entry(window)
entry1.pack()
# 목록
list1 = Listbox(window, selectmode='multiple')
list1.insert(0, '1번')
list1.insert(1, '2번')
list1.insert(2, '3번')
list1.delete(2)
list1.pack()
# 체크박스
lable2 = Label(window, text='동물 선택하기!', font=10, height=2, fg='DarkOrange1')
lable2.pack()
ck1val = IntVar()
ck1 = Checkbutton(window, text='강아지', variable=ck1val)
ck2val = IntVar()
ck2 = Checkbutton(window, text='고양이', variable=ck2val)
ck3val = IntVar()
ck3 = Checkbutton(window, text='병아리', variable=ck3val)
ck1.pack()
ck2.pack()
ck3.pack()
btn2 = Button(window, text='선택', command=sel_chk)
btn2.pack()
# 라디오 버튼
lable3 = Label(window, text='메뉴 선택하기!', font=10, height=2, fg='DarkOrange1')
lable3.pack()
rd_val = IntVar()
rd1 = Radiobutton(window, text='자장면', variable=rd_val, value=0, command=sel_rd)
rd2 = Radiobutton(window, text='짬뽕', variable=rd_val, value=1, command=sel_rd)
rd3 = Radiobutton(window, text='탕수육', variable=rd_val, value=2, command=sel_rd)
rd1.pack()
rd2.pack()
rd3.pack()
# 실행
window.mainloop()
+더 배우기
'공부기록 > Python' 카테고리의 다른 글
6월 15일 python - Web2 (0) | 2023.06.15 |
---|---|
6월 14일 (2) python - Web (0) | 2023.06.14 |
6월 14일 (1) python - 예외처리, 패키지 (0) | 2023.06.14 |
6월 13일 python - 클래스 (0) | 2023.06.13 |
6월 12일 (2) python - 모듈 (0) | 2023.06.12 |