9 7 月, 2007

TScrollBox内加TImage后的滚动速度

当TScrollBox内的TImage过大且TScrollBox本身Bound也较宽的时候会出现滚动条在滚动的时候明显延迟的情况,可能是由于我的绘图方式问题,现在是用GDI+通过TImage的handle直接绘图,另外不是在TImage的OnPaint里去重绘的,而是用了timer定时更新,因为我需要实现一些动画效果,现在尝试过将timer定时绘图的部分用一个TThread单开一个线程实现,但效果仍不是很理想。还尝试了一下根据TScrollBox的滚动条确定TImage的可视区域并用SetClip减掉没用的部分,最后也是稍微好了一点,当ScrollBox很大(整个窗口全屏的时候),拖动滚动条依然会有延迟,目前正在继续研究中……