Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   GUI-Design mit VCL / FireMonkey / Common Controls (https://www.delphipraxis.net/18-gui-design-mit-vcl-firemonkey-common-controls/)
-   -   Delphi TChart kopieren? (https://www.delphipraxis.net/105835-tchart-kopieren.html)

moelski 31. Dez 2007 10:33


TChart kopieren?
 
Moin !

Was auf den ersten Blick aussah wie eine einfache Sache entpuppt sich irgendwie langsam zu einem Problem. Und zwar will ich folgendes machen:
Ich will einem vorhandenen Chart ein Template überstülpen - also dessen Aussehen anhand einer TeeChart Template Datei anpassen.

Nun hat man aber ein Problem, denn wenn ich über LoadChartfromFile ein Template lade, dann werden automatisch die Inhalte der Serien zerstört. Das ist so by default und da kann man auch nix machen. Ergo muss man einen kleinen Umweg nehmen:
1) TempChart anlegen
2) Template in den TempChart laden
3) die Daten auf dem orginal Chart in den TempChart kopieren
4) den Inhalt von TenpChart in den orginalen Chart kopieren

bis 3 komme ich ja durch:
Delphi-Quellcode:
procedure TForm12.dxBarButton3Click(Sender: TObject);
var
  tmpChart     : TChart;
  I            : Word;
begin
  tmpChart := TChart.Create(Self);
  tmpChart.Parent := Self;

  LoadChartfromFile(TCustomChart(tmpChart), 'Template.tee'); //OpenDialog1.FileName);

  for I := 0 to Chart1.SeriesCount - 1 do begin
    tmpChart[I].AssignValues(Chart1[I]);
  end;
Aber dann hörts auf. Wie kann ich den TempChart nun über den orginal Chart kopieren?

Ich habs so versucht:
Delphi-Quellcode:
Chart1 := tmpChart;
geht nicht

Delphi-Quellcode:
Chart1.FreeAllSeries;
Chart1.Assign(Chart2);
Ergibt einen leeren Chart.

Kann mir hier jemand erklären wie ich einen Chart kopieren kann? Also mit allem Zip und Zap (Serien, Daten, Events, ...). :gruebel:


Alle Zeitangaben in WEZ +1. Es ist jetzt 21:37 Uhr.

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz