0
我試圖做一個GUI,顯示大量的checkbuttons,我從列表中創建它們;從列表中創建一個字典,並從字典中爲每個checkbutton分配一個變量,以便稍後檢查它的狀態。 問題是,即使我將變量設置爲0或1,我也嘗試更改狀態,但所有的checkbutton都以'alternate'狀態顯示,但似乎沒有任何幫助。ttk創建多個checkbuttons
y = 0
for x in get_dir_names(r'D:\SKL\test\win10'):
drv_check[x] = Variable()
drv_check[x].set(0)
center_window(150, 500, top_child)
drv = ttk.Checkbutton(child_frame, text=x, variable=drv_check[x])
drv.grid(row=y, column=0, sticky=W)
y += 1
參考
def get_dir_names(dir_path):
"""Get names only of all directories from a given path (none recursive)"""
drv_list = [x for x in os.walk(dir_path).__next__()[1]]
drv_name = dict({})
for y in drv_list:
tmp_ver = dir_path + r'\\' + y
drv_name[y] = (os.walk(tmp_ver).__next__()[1]).pop()
return drv_name