Tkinter Checkbutton 不会更改我的变量

问题描述 投票:0回答:1

我正在尝试将 Checkbutton 与函数一起使用,my_var 永远不会改变,但它总是调用我的函数。

这里是代码:

my_var = False
def controllo_carta():
    global my_var
    print str(my_var)

[...]

c = tk.Checkbutton(toolbar, text="press me",onvalue=True,offvalue=False,variable=my_var,command=controllo_carta)
c.select()
c.pack(side=tk.LEFT,padx=2,pady=2)

print 'my var:' + str(my_var)

[...]

我的错误在哪里?

谢谢!

python tkinter
1个回答
9
投票

为了使您的代码正常工作,我将使用 BooleanVar() 和关联的 get() 方法来检索其值 (http://effbot.org/tkinterbook/variable.htm)

例如:(来自:http://effbot.org/tkinterbook/checkbutton.htm

from Tkinter import *

master = Tk()

var = BooleanVar()

def cb():
    print "variable is {0}".format(var.get())

c = Checkbutton(master, text="Press me", variable=var, command=cb)
c.pack()

mainloop()
© www.soinside.com 2019 - 2024. All rights reserved.