Tkinter Progressbar start/step/stop 方法

Tkinter Progressbar start/step/stop 方法

这几个方法的含义如下。

(1)start(interval):每隔interval时间移动一次指针。interval的默认值是50ms,每次指针移动调用一次step(delta)。在step( )方法内的delta参数的意义是增值量。

(2)step(delta):每次增加一次delta,默认值是1.0,在determinate模式,指针不会超过maximum参数值。在indeterminate模式,当指针达到maximum参数值的前一格时,指针会回到起点。

(3)stop():停止start( )的运行。

示例1

验证使用step(2)方法,相当于每次增值2,当指针到达末端值100前一格时(相当于是98),指针会回到0,然后重新开始移动。这个程序执行时同时在Python Shell窗口中会列出目前指针的值。

from tkinter import *
from tkinter.ttk import *
import time

def running():                     # 开始Progressbar动画
    while pb.cget("value") <= pb["maximum"]:
        pb.step(2)
        root.update()              # 更新画面     
        print(pb.cget("value"))    # 打印指针值   
        time.sleep(0.05)

root = Tk()
root.title("apidemos.com")

pb = Progressbar(root,length=200,mode="determinate",orient=HORIZONTAL)
pb.pack(padx=10,pady=10)
pb["maximum"] = 100
pb["value"] = 0  # Progressbar初始值

btn = Button(root,text="Running",command=running)
btn.pack(pady=10)

root.mainloop()

输出:

Tkinter Progressbar start/step/stop 方法

示例2

使用start( )方法启动Progressbar的动画,当单击Stop按钮后才可中止此动画。

from tkinter import *
from tkinter.ttk import *

def run():      # 开始Progressbar动画
    print("run() Executed!!!")
    pb.start()  # 指针每次移动1
def stop():     # 终止Progressbar动画
    print("stop() Executed!!!")
    pb.stop()   # 终止pb对象动画

root = Tk()
root.title("apidemos.com")

pb = Progressbar(root,length=200,mode="determinate",orient=HORIZONTAL)
pb.pack(padx=5,pady=10)
pb["maximum"] = 100
pb["value"] = 0 

btnRun = Button(root,text="Run",command=run)     # 创建Run按钮
btnRun.pack(side=LEFT,padx=5,pady=10)

btnStop = Button(root,text="Stop",command=stop)  # 创建Stop按钮
btnStop.pack(side=LEFT,padx=5,pady=10)

root.mainloop()

输出:

Tkinter Progressbar start/step/stop 方法

Camera课程

Python教程

Java教程

Web教程

数据库教程

图形图像教程

办公软件教程

Linux教程

计算机教程

大数据教程

开发工具教程