генерация динамического числа флажков в tkinter - PullRequest
0 голосов
/ 28 мая 2019

Я пишу код для переноса файлов с моего диска 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 Ответ

1 голос
/ 28 мая 2019

Флажок tkinter ожидает переменную IntVar, поэтому заполните ваш список такими:

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

Тогда они больше не проверяются вместе.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...