2016-02-10 19 views
3

我有設立一個TProgressBar形式如下:更改TProgressBar的視覺步長?

myProgressBar.Step := 1; 
myProgressBar.Min := 0; 
myProgressBar.Max := 60; 
myProgressBar.Position := 0; 

與1000毫秒的間隔開始計時的形式開始,每時鐘滴答進度條是階梯狀。 60s後,酒吧幾乎已滿(見圖像,調試標籤顯示時間已過),但酒吧只有〜19.5塊,而不是我預期的60.這意味着你只能看到每3秒一步。

TProgressBar with overly chunky steps

有什麼我可以做這件事?設計師的暴露特性似乎沒有任何幫助。如果解決了問題,我很樂意將控制信息發送給我們。例如,我用這個代碼的其他地方改變進度條的顏色在運行時:

SendMessage(pbBin1.Handle, PBM_SETBARCOLOR, 0, clLime); 

回答

5

進度條是由系統繪製的,你不要選擇塊大小。相反,您可以使用平滑的進度條。將Smooth屬性設置爲True

+0

當然!之前沒有使用過該屬性,它完全符合我的需求。順便說一下,我注意到'Smooth'屬性被附加到Windows消息'PBS_SMOOTH'上。 – AlainD