Python 创建tkinter窗口后调用包含checkbutton的函数时,checkbutton值始终为0
我正在尝试创建一个函数来创建一个包含checkbutton的tkinter窗口。此函数称为另一个Tkinter窗口。每当我这样做时,checkbutton的值始终为0,即使我选择了它Python 创建tkinter窗口后调用包含checkbutton的函数时,checkbutton值始终为0,python,tkinter,checkbox,Python,Tkinter,Checkbox,我正在尝试创建一个函数来创建一个包含checkbutton的tkinter窗口。此函数称为另一个Tkinter窗口。每当我这样做时,checkbutton的值始终为0,即使我选择了它 from tkinter import * def go(value): print(value) value = value.get() print("value of checkbox",value) def test2(): tk = Tk()
from tkinter import *
def go(value):
print(value)
value = value.get()
print("value of checkbox",value)
def test2():
tk = Tk()
value = IntVar()
checkbutton = Checkbutton(tk, text = "value", onvalue = 1, offvalue = 0,variable = value)
checkbutton.pack()
button = Button(tk,text = "go", command = lambda:[go(value)])
button.pack()
window = Tk()
text = Label(window,text = "text")
text.pack()
test2()
window.mainloop()
如果我在没有窗口的情况下执行相同的操作,checkbutton将起作用:
from tkinter import *
def go(value):
print(value)
value = value.get()
print("value of checkbox",value)
def test2():
tk = Tk()
value = IntVar()
checkbutton = Checkbutton(tk, text = "value", onvalue = 1, offvalue = 0,variable = value)
checkbutton.pack()
button = Button(tk,text = "go", command = lambda:[go(value)])
button.pack()
#window = Tk()
#text = Label(window,text = "text")
#text.pack()
test2()
#window.mainloop()
Tkinter中的check按钮在windows中可能有点繁琐多次调用
Tk()
创建多个独立的GUI实例,其中包含无法与其他实例交互的小部件、变量等。使用Toplevel()
创建与根窗口位于同一GUI实例中的窗口。将master=tk
添加到IntVar()
call@jasonharper如果我们真的想吹毛求疵,.mainloop()
不会停止,直到所有Tk
和Toplevel
的实例都关闭。因此,Tk()
的不同实例可以相互通信,但这种情况非常罕见。