python 界面小例子

#Python3 用线程更新界面中内容

在做一个GUI 的时候需要显示某个模块运行的时间,用于提示该模块的运行状态,写一个小例子以记录:

#!/usr/bin/env python3

from tkinter import *

import time
import threading

class app_GUI():
    def __init__(self,parent):
        self.master = parent
        self.init_window()
        self.status = 0

    def init_window(self):
        self.master.geometry("300x300")
        self.master.title("a simple")
        self.text_show = StringVar()
        self.text_show.set("default text")
        self.label1 = Label(self.master,textvariable = self.text_show)
        self.label1.pack(side = "top",anchor = W)

        self.int_var = IntVar()
        self.int_var.set(1)

        self.b1 = Radiobutton(self.master,text = " time start",variable=self.int_var,value = 1).pack(side = "top",anchor=W)
        self.b2 = Radiobutton(self.master,text = " time end ", variable=self.int_var,value = 0).pack(side = "top",anchor=W)

        Button(self.master,text = "check",command = self.cofirm).pack(side = "top",anchor = W)

    def set_string(self,str_show):
        self.text_show.set(str_show)

    def cofirm(self):
        self.status = self.int_var.get()

def set_time(app_c):
    i = 0
    while True:
        if app_c.status == 0:
            app_c.set_string("wait start")
            i = 0
        else :
            app_c.set_string("start time " + str(i) + " s")
            time.sleep(1)
            i = i + 1



if __name__ == "__main__":
    window = Tk()
    UI = app_GUI(window)

    t_thread = threading.Thread(target= set_time,args=(UI,))
    t_thread.daemon = True
    t_thread.start()
    

    window.mainloop()


评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值