在tkinter

时间:2019-05-28 13:59:08

标签: python-3.x tkinter

我正在编写一些代码来从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

1 个答案:

答案 0 :(得分:1)

tkinter复选框需要一个IntVar变量,因此请在列表中填写以下内容:

while x <= 10000:
    var.append(IntVar(0))
    x += 1

然后不再将它们一起检查。