체크버튼(checkbutton) |
체크버튼은 사용자 여러가지 옵션 중에서 하나 이상을 선택할 때 주로 사용됩니다.
체크버튼은 선택 또는 선택 안함의 상태를 보여줄 수 있는 사각형의 버튼입니다.
체크버튼은 문자열이나 이미지를 포함할 수 있습니다.
▶ 생성
변수 = checkbutton(부모객체, 옵션) |
▶ 옵션

▶ 메소드
deselect() | 체크버튼 끄기 |
flash() | 선택과 비선택시 색상 반복 |
invoke() | 체크버튼과 연결된 함수 실행 |
select() | 체크버튼 선택 |
toggle() | 다른 체크버튼과 번갈아 선택 |
[ 파이썬 위젯 체크버튼 예제 1 ]
- 좋아 하는 동물을 모두 선택하는 프로그램을 만들어 보세요

[ 소스 코드 ]
from tkinter import *
from tkinter import messagebox
def check1(): #선택하면 1, 비선택이면 0입니다
str=""
if chk1.get() == 1:
str = str + "고양이"
if chk2.get() == 1:
str = str + " 강아지"
if chk3.get() == 1:
str = str + " 토끼"
if chk4.get() == 1:
str = str + " 햄스터"
if str=='':
show1.config(text = "다 싫어요")
else:
show1.config(text = str + "를 좋아합니다.")
#messagebox.showinfo("메시지", str + "를 좋아합니다")
def end1():
win.destroy()
win = Tk()
win.title("파이썬 위젯 체크버튼")
win.geometry("500x300")
chk1 = IntVar()
chk2 = IntVar()
chk3 = IntVar()
chk4 = IntVar()
label1 = Label(win, text = "[1번 문제] 당신이 가장 좋아하는 동물을 모두 선택하세요 ")
label1.pack()
chk11 = Checkbutton(win, text = "1. 고양이", variable=chk1)
chk11.pack()
chk12 = Checkbutton(win, text = "2. 강아지", variable=chk2)
chk12. pack()
chk13 = Checkbutton(win, text = "3. 토끼", variable=chk3)
chk13.pack()
chk14 = Checkbutton(win, text = "4. 햄스터", variable=chk4)
chk14.pack()
show1=Label(win, text = "여기에 출력됩니다")
show1.pack()
chkbutton1 = Button(win, text ="확 인", width=10, command=check1)
chkbutton1.pack()
end = Button(win, text ="종 료", width=10, command=end1)
end.pack()
win.mainloop()
[ 파이썬 위젯 체크버튼 예제 2 ]
- 다음과 같에 체크버튼을 문자열 대신 이미지로 표시해보세요

- 먹고싶은 음식을 체크하고 확인버튼을 누르면 메시지박스에 다음과 같이 출력됩니다.

- 먹고 싶은 음식이 없으면

- 체크버튼에 이미지 넣기
photo1 = PhotoImage(file="1.png")
chk11 = Checkbutton(win, image=photo1, variable=chk1)
chk11.grid(row=1, column=0)
[ 소스 코드 ]
더보기
from tkinter import *
from tkinter import messagebox
def check1(): #선택하면 1, 비선택이면 0입니다
str=""
if chk1.get() == 1:
str = str + "치킨"
if chk2.get() == 1:
str = str + " 돈까스"
if chk3.get() == 1:
str = str + " 떡볶이"
if chk4.get() == 1:
str = str + " 햄버거"
if str=='':
messagebox.showinfo("메시지","다이어트 중입니다.")
else:
messagebox.showinfo("메시지",str + "를 선택하셨습니다.\n엄마에게 사달라고하세요")
def end1():
win.destroy()
win = Tk()
win.title("파이썬 위젯 체크버튼")
win.geometry("700x500")
chk1 = IntVar()
chk2 = IntVar()
chk3 = IntVar()
chk4 = IntVar()
label1 = Label(win, text = "배고프죠? 먹고 싶은거 모두 선택하세요 ", font=("궁서체","20"))
label1.grid(row=0, column=0, columnspan=2)
photo1 = PhotoImage(file="1.png")
chk11 = Checkbutton(win, image=photo1, variable=chk1)
chk11.grid(row=1, column=0)
photo2 = PhotoImage(file="2.png")
chk12 = Checkbutton(win, image=photo2, variable=chk2)
chk12.grid(row=1, column=1)
photo3 = PhotoImage(file="3.png")
chk13 = Checkbutton(win, image=photo3, variable=chk3)
chk13.grid(row=2, column=0)
photo4 = PhotoImage(file="4.png")
chk14 = Checkbutton(win, image=photo4, variable=chk4)
chk14.grid(row=2, column=1)
chkbutton1 = Button(win, text ="확 인", width=10, font=("궁서체","15"), command=check1)
chkbutton1.grid(row=3, column=0, columnspan=2)
end = Button(win, text ="종 료", width=10, command=end1)
end.pack()
win.mainloop()
'파이썬 GUI' 카테고리의 다른 글
9. 파이썬 위젯 - 리스트박스 (0) | 2020.12.15 |
---|---|
8. 파이썬 위젯 - 프레임 (0) | 2020.12.14 |
6. 파이썬 위젯 - 라디오버튼 (0) | 2020.12.13 |
5. 파이썬 위젯 - 텍스트 상자 (0) | 2020.12.11 |
4. 파이썬 GUI - 입력창(Entry) (0) | 2020.12.10 |