通过线程实现并发,借助tkinter;实现不同按键操作的并发!
学习‘Python-100-Days-master’,例子运行有些问题,需要改进!
from threading import Thread
import tkinter
from time import sleep
from tkinter.messagebox import showinfo
#定义button参数,实现参数的传递
class down_thread(Thread):
def __init__(self,button_x):
self.button = button_x
super().__init__()
def run(self):
sleep(10)
showinfo('提示', '下载完成!')
# 启用下载按钮
self.button.config(state=tkinter.NORMAL)
def down_load_task(button):
button.config(state=tkinter.DISABLED)
t = down_thread(button)
t.start()
def label_show_task():
tkinter.messagebox.showinfo('hi', '线程测试程序')
def main():
top = tkinter.Tk()
top.title('线程测试')
top.geometry('200x150')
panel = tkinter.Frame(top)
#定义button参数,实现参数的传递
button1 = tkinter.Button(panel, text='下载', command=lambda : down_load_task(button1))
button1.pack(side='left')
button2 = tkinter.Button(panel, text='关于', command=label_show_task)
button2.pack(side='right')
panel.pack(side='bottom')
tkinter.mainloop()
if __name__ == '__main__':
main()```
来源:CSDN
作者:knight_hyz
链接:https://blog.csdn.net/knight_hyz/article/details/104107642