Віджет Checkbutton – клас прапорців. Цей віджет потрібен користувачам для вибору кількох елементів у вікні, що відрізняє його від перемикача, де користувач може зробити лише один вибір.
Прапорець має два стани: увімкнено або вимкнено.
name = Checkbutton(window)name – ім'я прапорця, window – ім'я вікна, на якому він розташовується
Прапорці не вимагають установки між собою зв'язку, тому може виникнути питання, а чи потрібні тут змінні Tkinter? Вони потрібні, щоб отримувати відомості про стан прапорців. За значенням пов'язаної з Checkbutton змінної можна визначити, чи обрано прапорець чи ні, що в свою чергу вплине на хід виконання програми.
У кожного прапорця повинна бути своя змінна Tkinter!
За допомогою опції onvalue встановлюється значення, яке приймає пов'язана змінна при включеному прапорці. За допомогою властивості offvalue — при вимкненому.
from tkinter import * # імпортування графічної бібліотекиroot = Tk() # створення головного вікна# створення прапорців через цикл forfor i in range(10): ch_button = Checkbutton(root, text=str(i+1)) ch_button.pack(side=LEFT) # задаємо параметр ліворуч, щоб прапорці розміщувались по горизонталіroot.mainloop() # задання команди відображення вікна при запускуfrom tkinter import * # імпортування графічної бібліотекиroot = Tk() # створення головного вікна# функція для друку стану прапорцівdef var_states(): print("жінка: %d,\nчоловік: %d" % (var1.get(), var2.get()))# створення та розміщення мітки з текстом "Оберіть стать"lab = Label(root, text="Оберіть стать:")lab.pack()var1 = IntVar() # створення змінної цілого типу для першого прапорцяcheck_b1 = Checkbutton(root, text="Жінка", # текст прапорця variable=var1, # значення змінної першого прапорця onvalue=1, # значення при включеному прапорці offvalue=0) # значення при вимкненому прапорціcheck_b1.pack()var2 = IntVar() # створення змінної цілого типу для другого прапорцяcheck_b2 = Checkbutton(root, text="Чоловік", # текст прапорця variable=var2, # значення змінної другого прапорця onvalue=1, # значення при включеному прапорці offvalue=0) # значення при вимкненому прапорціcheck_b2.pack()button_show = Button(root, text='Показати', command=var_states) # створення кнопки для друку значень стану прапорцівbutton_show.pack(side=LEFT)button_quit = Button(root, text='Закрити', command=root.quit) # створення кнопки, що закриває вікно (метод quit)button_quit.pack(side=RIGHT)root.mainloop() # задання команди відображення вікна при запуску