Checkbutton в tkinter

Валентин

Новичок
Пользователь
Ноя 13, 2020
114
1
18
Windows 10
python 3.9.0
import tkinter
Здраствуйте!
Мне нужно чтобы если галочка стоит, то выполнялась функция 1, а если галочка убрана, то вторая.
Вот примерно что должно быть:
Код:
def fun1():
    print(1)
   
def fun2():
    print(2)
   
if Checkbutton == True:
   fun1()
elif Checkbutton == False:
   func2()
Подскажите пожалуйста как это реализовать : )
 

stud_55

Модератор
Команда форума
Модератор
Апр 3, 2020
1 522
672
113
Вот пример:
Python:
import tkinter as tk


class Application(tk.Frame):

    def __init__(self, *args, **kwargs):
        tk.Frame.__init__(self, *args, **kwargs)

        # переменная для чекбокса
        self.check = tk.IntVar()
        self.cb = tk.Checkbutton(self.master, variable=self.check)
        self.cb.pack()
        b1 = tk.Button(self.master, text='Execute',
                       command=lambda: self.func())
        b1.pack()

    def func(self):
        # вызов функции в зависимости от состояния чекбокса
        if self.check.get() == 1:
            self.print2()
        else:
            self.print1()

    def print1(self):
        print('1')

    def print2(self):
        print('2')


if __name__ == '__main__':
    root = tk.Tk()
    Application(root)
    root.mainloop()
 

Форум IT Специалистов