[Tkinter] Checkbutton 체크가능,불가능 버튼
- Python/GUI
- 2021. 8. 17.
반응형
반응형
Checkbutton의 세가지 모양에 대해 알아보겠습니다.
GUI 창이 떴을 때의 Checkbutton 모습을 임의로 만들 수 있는데 다음과 같은 형태로 만들 수 있습니다.
목차
체크 불가능 버튼
체크 불가능 버튼을 만들려면 tk.Checkbutton의 파라미터에 state = disabled 를 추가합니다.
체크가 된 상태로 만들고 싶다면 select 메쏘드를 사용합니다.
select를 넣으면 체크가 된 상태로 GUI 창이 뜹니다.
deselect를 넣으면 체크가 안 된 상태로 창이 뜨게 됩니다.
import tkinter as tk
root = tk.Tk()
check1 = tk.Checkbutton(root, text='Disabled',variable=tk.IntVar(),state= 'disabled')
check1.select()
check1.grid(column=0,row=0,sticky=tk.W)
root.mainloop()
체크가 안 된 상태로 만들고 싶다면 check1.deselect()를 넣습니다.
import tkinter as tk
#체크 불가능 버튼(체크된 상태)
root = tk.Tk()
check1 = tk.Checkbutton(root, text='Disabled',variable=tk.IntVar(),state= 'disabled')
check1.deselect()
check1.grid(column=0,row=0,sticky=tk.W)
root.mainloop()
체크 가능 버튼
GUI 창이 떴을 때 체크된 상태로 뜨게 합니다.
체크가 가능해야 하니 state='disabled' 는 없애고
체크된 상태로 창을 띄우기 위해 check2.select() 넣습니다.
root = tk.Tk()
check2 = tk.Checkbutton(root, text='Enabled',variable=tk.IntVar())
check2.select()
check2.grid(column=0,row=0,sticky=tk.W)
root.mainloop()
체크가 안 되길 원한다면 check2.deselect()으로 넣습니다.
root = tk.Tk()
check2 = tk.Checkbutton(root, text='Enabled',variable=tk.IntVar())
check2.deselect()
check2.grid(column=0,row=0,sticky=tk.W)
root.mainloop()
전체 코드
전체 코드로 해서 앞서 설명한 버튼 모두를 넣어보겠습니다.
import tkinter as tk
root = tk.Tk()
check1 = tk.Checkbutton(root, text='Disabled',variable=tk.IntVar(),state= 'disabled')
check1.deselect()
check1.grid(column=0,row=0,sticky=tk.W)
check2 = tk.Checkbutton(root, text='Disabled',variable=tk.IntVar(),state='disabled')
check2.select()
check2.grid(column=1,row=0,sticky=tk.W)
check3 = tk.Checkbutton(root, text='Enabled',variable=tk.IntVar())
check3.deselect()
check3.grid(column=2,row=0,sticky=tk.W)
check4 = tk.Checkbutton(root,text='Enabled',variable=tk.IntVar())
check4.select()
check4.grid(column=3,row=0,sticky=tk.W)
root.mainloop()
관련 포스팅
'Python > GUI' 카테고리의 다른 글
[Python] py파일 exe로 만들기(Auto-py-to-exe) (0) | 2021.12.13 |
---|---|
[PyQt5] Qt Designer로 GUI 틀 만들고 py파일로 바꾸기 (0) | 2021.11.22 |
[Tkinter] 기본 위젯 (0) | 2021.08.04 |
[Tkinter] Tkinter 시작하기(Hello world) (0) | 2021.07.31 |
[Tkinter] Tkinter 간단 소개 (0) | 2021.07.11 |