Delphi 如何防止Tflowpanel中的闪烁?

Delphi 如何防止Tflowpanel中的闪烁?,delphi,delphi-10.1-berlin,Delphi,Delphi 10.1 Berlin,我使用以下代码向Tflowpanel添加一些Timage控件 procedure TForm1.AddToFlow(AGpath : string); var aGIF:TGIFImage; aimage : Timage; begin aGIF := TGIFImage.Create; try aGIF.LoadFromFile(AGpath); aimage := Timage.Create(FlOWPANEL); aimage.Parent := FlOWPANEL; aimage

我使用以下代码向Tflowpanel添加一些Timage控件

procedure TForm1.AddToFlow(AGpath : string);
var
aGIF:TGIFImage;
aimage : Timage;
begin

aGIF := TGIFImage.Create;
try

aGIF.LoadFromFile(AGpath);

aimage := Timage.Create(FlOWPANEL);
aimage.Parent  := FlOWPANEL;
aimage.Center := True;
aimage.Picture.Graphic := aGIF;

finally
FreeAndNil(aGIF);
end;


end;

但是每次我添加TImage时,FlowPanel及其内部的Timages开始闪烁,您知道如何避免在这种情况下闪烁吗?

对于闪烁的组件,您可以设置属性
双缓冲:=True
。这将在屏幕上实际刷新组件之前重新绘制组件。

flowpanel位于滚动框内,doublebuffered没有帮助。在这种情况下,您需要将
doublebuffered
属性设置为所有组件。在你的例子中,TFlowPanel,TScrollBox,最终还有TImage。感谢上帝,2020年有人问了这个问题!!