Tkinter Checkbox

2024. 2. 29. 17:58GUI/tkinter

요약 : 이 튜토리얼에서는 Tkinter Checkbox 위젯과 이를 효과적으로 사용하는 방법에 대해 배웁니다.

Tkinter 체크박스 위젯 소개

체크박스는 체크하고 해제할 수 있는 위젯입니다.

확인란은 값을 보유할 수 있으며 선택되거나 선택 취소되면 콜백을 호출할 수 있습니다.

일반적으로 사용자에게 두 값 중 하나를 선택하도록 요청하려는 경우 확인란을 사용합니다.

확인란을 만들려면 ttk.Checkbutton 생성자를 사용합니다.

checkbox_var = tk.StringVar()

def check_changed():
     #...

checkbox = ttk.Checkbutton(container,
                         text='',
                         command=check_changed,
                         variable=checkbox_var,
                         onvalue='<value_when_checked>',
                         offvalue='<value_when_unchecked>')

container 인수는 확인란을 배치하려는 창을 지정합니다.

text 인수는 확인란의 레이블을 지정합니다.

command는 체크박스를 선택하거나 선택 취소하면 호출되는 callable입니다 .

variable은 확인란의 현재 값을 보유합니다. 체크박스를 체크하면, 변수값은 1이 되고, 체크하지 않으면, 0이 됩니다.

0과 1 이외의 값을 원할 경우, onvalue 및 offvalue 옵션에서 지정할 수 있습니다.

연결된 변수가 존재하지 않거나 해당 값이 on 값이나 off 값이 아닌 경우 확인란은 불확정 또는 3상태 모드에 있습니다.

Tkinter 체크박스 예제

다음 프로그램은 체크박스 위젯을 사용하는 방법을 보여줍니다. 확인란을 선택하거나 선택 취소를 하면, 메시지 상자에 그에 따라 켜짐 값과 꺼짐 값이 표시됩니다.

In [2]:
import tkinter as tk
from tkinter import ttk
from tkinter.messagebox import showinfo

root = tk.Tk()
root.geometry('300x200')
root.resizable(False, False)
root.title('Checkbox Demo')

agreement = tk.StringVar()


def agreement_changed():
    tk.messagebox.showinfo(title='Result',
                        message=agreement.get())


ttk.Checkbutton(root,
                text='I agree',
                command=agreement_changed,
                variable=agreement,
                onvalue='agree',
                offvalue='disagree').pack()


root.mainloop()

 

동작 방식:

먼저 체크박스의 값을 담을 문자열 변수를 만듭니다.

agreement = tk.StringVar()

둘째, 체크박스 상태가 변경되면 호출될 함수를 정의합니다. 이 함수는 확인란의 값을 표시합니다.

def agreement_changed():
     tk.messagebox.showinfo(title='Result',
                         message=agreement.get())

셋째, 체크박스 위젯을 만들고 이에 따라 옵션을 설정합니다.

ttk.Checkbutton(root,
                         text='I agree',
                         command=agreement_changed,
                         variable=agreement,
                         onvalue='agree',
                         offvalue='disagree').pack

요약

  • 확인란을 만드는 데 ttk.Checkbutton(text, variable)을 사용합니다. 변수는 tk.StringVar()입니다.
  • command 인수를 사용하여 버튼을 선택하거나 선택 취소할 때 실행되는 함수를 지정합니다.
  • onvalue 및 offvalue를 사용하여, variable가 취할 값을 결정합니다.

'GUI > tkinter' 카테고리의 다른 글

Tkinter Combobox  (0) 2024.03.02
Tkinter Radio Button  (0) 2024.03.01
Tkinter Separator  (0) 2024.02.28
Tkinter ScrolledText  (1) 2024.02.27
Tkinter Scrollbar  (1) 2024.02.26