我有一个运行大量操作的应用程序,并且我正在尝试使用 TProgressBar 来跟踪正在发生的情况。我设置了多个步骤,并调用 .StepIt 来增加进度条。
问题是,它并没有很好地跟上。它似乎不喜欢直接跳到正确的位置,而是逐渐滑动到正确的位置。如果您追求的是养眼的效果,那么这一切都很好,但是当我试图准确地表示我的日常进度时,这使它看起来总是落后于真实状态。我怎样才能关闭这个“功能”?
我只在 Windows Vista 下注意到这种情况发生。不确定XP上是否也会发生这种情况,因为当我在XP上测试时,该过程进行得更快,而且结束得太快。 :P 但这可能是也可能不是 Vista 特定的。不管怎样,这都让我发疯。有谁知道如何修理它?
如果您不介意将进度条设置为黄色而不是绿色,我有一个快速但部分且不优雅的解决方案:
ProgressBar1.SmoothReverse := True;
ProgressBar1.State := pbsPaused; // for yellow or pbsError for red
或者,如果您不介意失去远景/主题外观并返回到平坦的蓝色:
UxTheme.SetWindowTheme(ProgressBar1.Handle, ' ', ' ');
根据微软的说法,真正的“问题”是你试图将 ProgressBar“扭曲”成 Meter,但他们声称事实并非如此。
你也可以尝试自己画它;-)
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)