python 线程关闭tkinter_从tkinter gui停止python线程

我正在尝试创建一个简单的pythongui(使用Tkinter),在线程中运行while循环,并使用stop按钮停止while循环。在

我有问题的停止按钮,它不会停止任何东西和冻结的图形用户界面一旦开始按钮被点击。在

参见以下代码:import threading

import Tkinter

class MyJob(threading.Thread):

def __init__(self):

super(MyJob, self).__init__()

self._stop = threading.Event()

def stop(self):

self._stop.set()

def run(self):

while not self._stop.isSet():

print "-"

if __name__ == "__main__":

top = Tkinter.Tk()

myJob = MyJob()

def startCallBack():

myJob.run()

start_button = Tkinter.Button(top,text="start", command=startCallBack)

start_button.pack()

def stopCallBack():

myJob.stop()

stop_button = Tkinter.Button(top,text="stop", command=stopCallBack)

stop_button.pack()

top.mainloop()

你知道怎么解决这个问题吗?我相信这是微不足道的,肯定已经做了数千次,但我自己找不到解决办法。在

谢谢

大卫

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值