当我对应用程序中的某些组件进行“动画处理”时,希望你们中的一些人能够指出我处理闪烁/撕裂/重绘问题的正确方向。
我必须先说“动画”在不处于全屏模式时似乎可以正常工作(没有闪烁等) - 即 1024*768,borderstyle=bsSingle。当应用程序接管完整的监视器并且边框样式变为 bsNone 时,此问题变得更加明显。
有2个“动画”:
1 - 使用 Winapi AnimateWindow 方法从左到右滚动面板
2 - TmsAdvPolyPager 逐步浏览其每一项并随后显示其“页面”
滚动面板时,“退出”的面板会留下“轨迹”,动画似乎在颤抖,不再流畅。
单步执行 TmsAdvPolyPager 项时,下一项有时不会突出显示,并且它显示的页面通常具有上一个面板的“残差”。
两个动画都由计时器触发 - AnimateWindow 在它自己的线程中,而 PolyPager 步进不是。
所以,基本上 - 关于如何平滑这些动画并强制正确重绘 TmsAdvPolyPager 组件的任何想法?第一次尝试这种东西,所以不完全确定要研究什么。
一如既往,非常感谢您的帮助!