【发布时间】:2023-01-15 10:05:47
【问题描述】:
- 在发布这个问题之前,我参考了之前发布的答案。如果您正在寻找默认检查方法,我敢为您提供建议,请参考以下链接:Tkinter: is there way to check boxes by default?
我尝试将每个项目的默认值设置为列表的布尔值,但仍未选中。
我有下面的代码片段。它是使用 forloop 创建的,用于生成多个复选按钮。在我试图实现的程序中,有更多这样的复选按钮。但我已将它们减少到以下五个。
from tkinter import *
class App():
def __init__(self, root):
keys = [True, True, False, False, False]
self.root = root
for n in range(0, 5):
self.CheckVar = BooleanVar()
self.checkbutton = Checkbutton(self.root, text = 'test_' + str(n), variable = self.CheckVar.set(keys[n])).pack()
root = Tk()
app = App(root)
root.mainloop()
或者我也试过这种方式。
for n in range(0, 5):
self.CheckVar = BooleanVar(value=keys[n])
self.checkbutton = Checkbutton(self.root, text = 'test_' + str(n), variable = self.CheckVar).pack()
然后这些复选按钮使用户能够修改列表的布尔值。
【问题讨论】:
标签: python for-loop tkinter checkbox