我试图添加一个线程到tkinter按钮,当它按下时触发。但只要我运行程序,按钮内的功能就会在我点击任何东西之前自动启动
这是我的密码:
m = Main()
root = Tk()
root.geometry("500x500")
frame = Frame(root)
frame.pack()
start = Button(frame, text="Start",
command=threading.Thread(target=m.main).start())
stop = Button(frame, text="stop", command=quit)
start.pack(pady=20)
stop.pack()
root.mainloop()
函数在未单击按钮的情况下运行的原因是您在函数后添加了括号
因此,您需要更改这一行:
为此:
您所要做的就是去掉括号,这告诉python只有在单击按钮时才能运行函数。如果包含括号,python将其视为普通函数调用,并完全忽略该按钮
完整代码:根据您在问题中给出的内容
或者您可以使用
lambda
相关问题 更多 >
编程相关推荐