我正在编写一些代码来从C驱动器中传输文件,并将其用作tkinter的学习练习。目前,我已将其设置为从我的Python文件夹中读取所有文件,并为每个选择一个复选框,它可以成功显示该列表。但是,当您单击其中一个复选框时,它们都将打开或关闭。 Checkbutton定义的哪一部分控制了这一点,我将如何对其进行更改,同时仍然能够生成所需数量的复选框?我已经在下面添加了相关代码。
var = []
x = 0
while x <= 10000:
var.append(0)
x += 1
path = 'C:\\Users\\ebonh\\Documents\\PythonStuff'
files = []
for r, d, f in os.walk(path):
for file in f:
files.append(os.path.join(r, file))
Label(master, text="Transfer these files to D Drive:").grid(row=0, sticky=W)
x = 0
for f in files:
Checkbutton(master, text=f, variable=var[x]).grid(row=(x+1), sticky=W)
x += 1
答案 0 :(得分:1)
tkinter复选框需要一个IntVar变量,因此请在列表中填写以下内容:
while x <= 10000:
var.append(IntVar(0))
x += 1
然后不再将它们一起检查。