如何顯示進度條?

2021-06-04 16:31:58 字數 1460 閱讀 3179

在許多程式中,程式需要自己做些事情而不受使用者輸入的干擾。這時就需要給使用者一些可見的顯示,以表明程式正在做一些事情及完成的進度。在wxpython中,這通常使用乙個進度條來管理,如圖9.5所示。

圖9.5

例9.5顯示了產生圖9.5的**

例9.5 生成乙個進度條

import wx

if __name__ == "__main__":

progressmax = 100

dialog = wx.progressdialog("a progress box", "time remaining", progressmax,

style=wx.pd_can_abort | wx.pd_elapsed_time | wx.pd_remaining_time)

keepgoing = true

count = 0

while keepgoing and count 

count = count + 1

wx.sleep(1)

keepgoing = dialog.update(count)

dialog.destroy()

進度條的所有選項在建構函式中被設定,建構函式如下:

wx.progressdialog(title, message, maximum=100, parent=none, 

這些引數不同於其它對話方塊的。引數title被放置在視窗的標題欄,message被顯示在對話方塊中。maximum是你用來顯示進度計數的最大值。

表9.3 列出了特定於wx.progressdialog六個樣式,它們影響進度條的行為。

表9.3 wx.progressdialog的樣式

wx.pd_auto_hide:進度條將自動隱藏自身直到它達到它的最大值。

wx.pd_can_abort:在進度條上放上乙個cancel按鈕,以便使用者停止。如何響應來自該對話方塊的取消將在以後說明。

wx.pd_elapsed_time:顯示該對話方塊已經出現了多長時間。

wx.pd_estimated_time:顯示根據已花的時間、當前的計數值和計數器的最大值所估計出的完成進度所需的總時間。

wx.pd_remaining_time:顯示要完成進度所估計的剩餘時間,或(所需總時間-已花時間)。

要使用進度條,就要呼叫它的唯一的方法update(value,newmsg="")。value引數是進度條的新的內部的值,呼叫update將導致進度條根據新的計數值與最大計算值的比例重繪。如果使用可選的引數newmsg,那麼進度條上的文字訊息將變為該字串。這讓你可以給使用者乙個關於當前進度的文字描述。

這個update()方法通常返回true。但是,如果使用者通過cancel按鈕已經取消了該對話方塊,那麼下次的update()將返回false。這是你響應使用者的取消請求的機會。要檢測使用者的取消請求,我們建議你盡可能頻繁地update()。

進度條顯示

最近的專案需求中涉及到了顯示進度的圖示,因此就簡單實現了一下,拿出來獻醜了 方法實現很簡單,主要是使用了framelayout的特殊性來實現的疊加顯示的 有次需求的同學們可以參考一下呦3 成功的 失敗的 進行中的 初始化 param attrs private void initview attri...

Python 進度條顯示

執行工具 pycharm,import time scale 50 print 開始執行 center scale 2,start time.perf counter 呼叫一次 perf counter 從計算機系統裡隨機選乙個時間點a,計算其距離當前時間點b1有多少秒。當第二次呼叫該函式時,預設從...

如何在UIAlertView中顯示進度條

今天這個問題是,在乙個iphone程式中,我要在後台做大量的資料處理,希望在介面上顯示乙個進度條 progress bar 使得使用者了解處理進度。這個進度條應該是在乙個模態的視窗中,使界 今天這個問題是,在乙個iphone程式中,我要在後台做大量的資料處理,希望在介面上顯示乙個進度條 progre...