给你看一段demo.
这代码是把一个chart存入内存流,然后马上就恢复到另外一个chart,我觉得你修改了就可以使用。
procedure TTemplateChart.Button2Click(Sender: TObject);
var tmp : TMemoryStream;
{$IFDEF CLR}
tmpChart : TCustomChart;
{$ENDIF}
begin
{ 1) Save the template into a Stream... }
tmp:=TMemoryStream.Create;
try
{ save only Chart and Series formatting, NOT including data }
SaveChartToStream(TemplateChart,tmp,False);
{ 2) Load the template into other Chart... }
tmp.Position:=0; { <-- set stream position to beggining of stream }
{$IFDEF CLR}
tmpChart:=TCustomChart(Chart1);
LoadChartFromStream(tmpChart,tmp);
Chart1:=TChart(tmpChart);
{$ELSE}
LoadChartFromStream(TCustomChart(Chart1),tmp);
{$ENDIF}
{ restore the chart alignment (in this example) }
Chart1.Align:=alClient;
{ repaint the Chart }
Chart1.Repaint;
finally
{ remove the stream, it's no longer necessary... }
tmp.Free;
end;
end;