Выведите чекбокс, который при каждом запуске программы случайным образом должен быть либо включенным, либо выключенным
Выведите чекбокс, который при каждом запуске программы случайным образом должен быть либо включенным, либо выключенным. Я 3 день занимаюсь тока в Python так что не ругайте, я догнать не могу как это сделать понимаю что то с модулем random надо делать а куда его вставлять не пойму все перепробовал подскажите как сделать
import random
from tkinter import *
def setwindow(root):
root.title('Окно программы')
root.resizable(False, False)
w = 800 # Размер ширины окна
h = 600 # Размер высоты окна
# Теперь надо узнать размер экрана пользователя
ws = root.winfo_screenwidth() # тоесть информация размера экна по ширине
wh = root.winfo_screenheight() # размер экна по длинне
x = int(ws / 2 - w / 2) # преобразуем их сразу к целому типу (делим размера экрана по ширине на размер окна и получаем левый верхний угол
y = int(wh / 2 - h / 2) # Делим размер экрана по длинне на размер высоты окна
root.geometry('{0}x{1}+{2}+{3}'.format(w, h, x, y))
root = Tk()#для того чтоб создать окно нужно вызвать конструктор данного модуля tkinter
setwindow(root)#вызов функции setwindow
choice = IntVar()#Чтоб узнать кликнули по данному чекбоксу или нет нужно восподльзоваться IntVar() в отдельной переменной он обарачивает как бы переменную в оболочку с которой можно работать как с переменной но с помощью спец методов
#например так изменим значение choice.set(10)
#например так получим значение choice.get
#И мы должны данный checkbuttun превезать к данной переменной делается это с помощью параметра variable = и указываем переменную
#Далее нужно указать какие должны быть установлены значения если чекбокс включон и выключен для вкл параметр onvalue,для вык offvalue
check = Checkbutton(root,bd='20',text='чекбокс',variable=choice,onvalue=1,offvalue=0)#чекбокс это окошко где ставится галочка
a = check.select()
b = check.deselect()
check.pack()
#heck.select()#так можно включить флажек
#check.deselect()#так можно снять флажек
print(choice.get())#Так проверяем вкл или выключен флажек
root.mainloop()
Ответы (2 шт):
Автор решения: Shamus Rezol
→ Ссылка
Сгенерируйте, например, случайное целое число от 0 до 1. Если оно будет равным единицы, то включите чекбокс. Иначе, выключите. Посмотрите на функцию random.randint.
Автор решения: Master's Time
→ Ссылка
Вот вам исходный код
from tkinter import *
def setwindow(root):
root.title('Окно программы')
root.resizable(False, False)
w = 800
h = 600
ws = root.winfo_screenwidth()
wh = root.winfo_screenheight()
x = int(ws / 2 - w / 2)
y = int(wh / 2 - h / 2)
root.geometry('{0}x{1}+{2}+{3}'.format(w, h, x, y))
root = Tk()
choice = IntVar()
checker = random.choice([True,False])
check = Checkbutton(root,bd='20',text='чекбокс',variable=choice,onvalue=checker)
check.grid(padx = 1,pady = 1)
setwindow(root)
print(not checker)
root.mainloop()