父窗体上的按钮都有背景图片,窗体本身也有背景图片,貌似都是这些图片在闪烁,不做去图片测试了。。
转载:http://blog.csdn.net/dd_zhouqian/article/details/6759876
任何一个继承自TWinControl的类都有DoubleBuffered这个属性,如果你的IMAGE放在PANEL
上,你就将Panel的DoubleBuffered设为TRUE,如果在FORM上,就设FORM的。即可
我的图片控件是在panel里放着,所以后台设置panel1.DoubleBuffered:=True;后不再闪烁
还有一种办法:
在主窗体上声明这个过程,并实现它,可以防止闪烁(win7下好像不像,只能用上面那种解决方案,话说回来,设置个属性就可以,何必再多写个方法呢)
procedure CreateParams(var Params: TCreateParams); override;
procedure TForm1.CreateParams(var Params: TCreateParams);
begin
inherited;
Params.ExStyle := 33554432; //0x 02 00 00 00
end;