У меня возникла проблема с загрузкой состояния флажка из текстового файла, содержащего «0» и «1».
inside "test.txt" file :
1
0
1
0
Это то, что я ожидаю, что результат будет таким: «1» представляет собой флажок, а «0» представляет собой флажок без флажка.
Ниже приведен код, над которым я работаю:
import tkinter as tk
from tkinter import ttk
root = tk.Tk()
root.geometry("180x90")
name1 = ["Mike", "Harry", "Siti", "Jenn"]
def loadstates():
f = open("test.txt", "r")
list_a = []
list_a = f.readlines()
return list_a
f.close()
def createCheckboxes():
for x, y in zip(st, name1):
check = ttk.Checkbutton(root, text=y, variable=x)
if x=='0':
check.select()
else:
check.deselect()
check.pack(anchor=tk.W)
st = loadstates()
createCheckboxes()
root.mainloop()
Но выдает ошибку:
Traceback (последний последний вызов): файл "C:/Users/jmamuham/PycharmProjects/LogBook/load_state.py", строка 24, в createCheckboxes(). Файл "C:/Users/jmamuham/PycharmProjects/LogBook/load_state. .py", строка 20, в createCheckboxes check.deselect() AttributeError: объект "Checkbutton" не имеет атрибута "deselect"
Любая идея, почему .select() и .deselect() дают мне эту ошибку?
Кстати, я использую правильный подход к повторному заполнению состояния флажка, используя 1 и 0?
f.close()
послеreturn
никогда не будет выполняться. - person furas   schedule 24.01.2020ttk.Checkbutton
не имеетselect()
иdeselect()
. Но уtkinter.Checkbutton()
естьselect()
иdeselect()
. - person furas   schedule 24.01.2020variable=
- person stovfl   schedule 24.01.2020