闪烁的本质是GDI在短时间内连续画图产生.
应在内存中画好再一次性画到屏幕上.
具体的操作是:
1、在内存中生成一个TBitmap对象。(一般来讲,此TBitmap要和前景的Canvas有相同的宽度和高度)
2、在TBitmap的Canvas上画图。
3、用Canvas.Draw(0,0,TBitmap的实例)将内存位图贴到前景。
也可尝试用BitBlt(DestCanvas.Handle, xPos, yPos, Width, Height, SrcCanvas.Handle, xPos, yPos, SRCCOPY)
不过要注意正确获得 TImage.Canvas.Handle,不然无法正确在所要位置输出图像。