python - TKInter Python 检查按钮状态

标签 python tkinter

如果选中了某些复选框,我将尝试对文本文件进行一些操作。

"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()
<小时/>

但是下面的代码永远不会打印,因为“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()

关于python - TKInter Python 检查按钮状态,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47884466/

相关文章:

python - 禁用、隐藏或删除 Tkinter 中的关闭 "X"按钮

c# - 将矩形排列成螺旋状

Python 列表框

python - Subprocess.Popen 在解释器、可执行脚本中的行为不同

python facebook 墙帖 (#200)

python - sqlalchemy 按计数列过滤

python-3.x - 在 jupyter notebook 中如何将 tkinter.filedialog 窗口带到所有窗口的顶部?

python-3.x - tkinter TreeView : how to disable widget?

python - 将图像转换为适当的尺寸 PyTorch

python - 将列表的每个元素乘以一个数字