我有一个带有TProgressBar的表单,设置如下:
myProgressBar.Step := 1;
myProgressBar.Min := 0;
myProgressBar.Max := 60;
myProgressBar.Position := 0;
在窗体启动时启动一个间隔为1000毫秒的计时器,每个计时器在进度条上步进。 60 s之后,该条几乎已满(请参见图像,带有显示调试时间的调试标签),但是条中只有〜19.5个块,而不是我期望的60块。这意味着您每3 s只看到一个步骤。
有什么我可以做的吗?设计器中没有任何公开的属性似乎无济于事。如果可以解决问题,我很乐意向控件发送消息。例如,我在其他地方使用此代码在运行时更改进度栏的颜色:
SendMessage(pbBin1.Handle, PBM_SETBARCOLOR, 0, clLime);
最佳答案
进度条是由系统绘制的,您无需选择块大小。相反,您可以使用平滑的进度栏。将Smooth
属性设置为True
。