Podes tratar polimórficamente a las series partiendo de su clase base:
TChartSeries
Acabo de hacer esto, que funcionó perfectamente:
Código Delphi
[-]
function TForm1.CreaSerie(Clase: TChartSeriesClass): TChartSeries;
begin
Result := Clase.Create(Chart1);
Chart1.AddSeries(Result);
Result.Add(random(50));
Result.Add(random(50));
Result.Add(random(50));
Result.Add(random(50));
Result.Add(random(50));
Result.Add(random(50));
Result.Add(random(50));
Result.Add(random(50));
Result.Add(random(50));
Result.Add(random(50));
Result.Add(random(50));
end;
procedure TForm1.Button1Click(Sender: TObject);
begin
CreaSerie(TBarSeries);
end;
procedure TForm1.Button2Click(Sender: TObject);
begin
CreaSerie(TLineSeries);
end;
procedure TForm1.Button3Click(Sender: TObject);
begin
CreaSerie(THorizBarSeries);
end;
procedure TForm1.Button4Click(Sender: TObject);
begin
CreaSerie(THorizLineSeries);
end;
procedure TForm1.Button5Click(Sender: TObject);
begin
CreaSerie(TAreaSeries);
end;
Hasta luego.
