如果检查某些检查按钮,我试图在文本文件上做一些工作。
"Populate CheckBoxes"
Label(master, text="Pick at least one index:").grid(row=4, column=1)
Checkbutton(master, text="Short",variable=var1).place(x=5,y=60)
Checkbutton(master, text="Standard",variable=var2).place(x=60,y=60)
Checkbutton(master, text="Long",variable=var3).place(x=130,y=60)
调用
print("Short: %d,\nStandard: %d,\nLong: %d" % (var1.get(), var2.get(),
var3.get()))
每个变量打印出0或1,但当我尝试使用该值做某事时,它似乎不会调用代码。
if var2.get(): <--- does this mean if = 1?
Do something
在下面的示例中,var.get()
的值在命令提示符下打印,如果它是False
并更新lbl['text']
,如果它是True
:
import tkinter
root = tkinter.Tk()
lbl = tkinter.Label(root)
lbl.pack()
var = tkinter.BooleanVar()
def update_lbl():
global var
if var.get():
lbl['text'] = str(var.get())
else:
print(var.get())
tkinter.Checkbutton(root, variable=var, command=update_lbl).pack()
root.mainloop()
但下面的代码从来没有print
s作为"0"
和"1"
都是True
:
import tkinter
root = tkinter.Tk()
lbl = tkinter.Label(root)
lbl.pack()
var = tkinter.StringVar()
def update_lbl():
global var
if var.get():
lbl['text'] = str(var.get())
else:
print(var.get())
tkinter.Checkbutton(root, variable=var, command=update_lbl).pack()
root.mainloop()