Delphi-PRAXiS
Seite 2 von 2     12   

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Object-Pascal / Delphi-Language (https://www.delphipraxis.net/32-object-pascal-delphi-language/)
-   -   Delphi Test auf assigned(P) verusacht AV (https://www.delphipraxis.net/144553-test-auf-assigned-p-verusacht-av.html)

Ralf Kaiser 14. Dez 2009 10:21

Re: Test auf assigned(P) verusacht AV
 
Von welchen Chart-Objekt reden wir hier eigentlich? Von welcher Basisklasse ist "Series" abgeleitet? (TCollection?)

Eigentlich sollte das "Series" Objekt doch Methoden zum löschen haben (Delete() oder Remove()?).

messie 14. Dez 2009 11:58

Re: Test auf assigned(P) verusacht AV
 
Zitat:

Zitat von Alfi001
Von welchen Chart-Objekt reden wir hier eigentlich? Von welcher Basisklasse ist "Series" abgeleitet? (TCollection?)

von TChart(abgeleitet von TCustomPanel). Die Datenreihen TSeries sind TComponent-Klassen.
Die TSeries werden erzeugt und mit der property ParentChart an den TChart gebunden. Dabei wird wohl im Chart die TChart.SeriesList (stammt von TList ab) und TChart.Series (TComponent) erneut erzeugt bzw. der Chart müsste sich dann die Referenz holen.

Zitat:

Zitat von Alfi001
Eigentlich sollte das "Series" Objekt doch Methoden zum löschen haben (Delete() oder Remove()?).

Ja, als Abkömmling von TComponent hat es die Methode TSeries.Free, die kann ich korrekt einzeln dort dereferenzieren .

Ich habe das aber über die SeriesList mit einer Zeile abgehandelt und deren Methode Clear benutzt. Das ist wohl ein Container irgendwelcher Referenzen, die über die Referens auf die TSeries hinausgehen.

Besonders übersichtlich ist TeeChart ja nicht, dafür aber sehr flexibel. Aber die eine oder andere Bauchlandung gehört da zum Programm.

Grüße, Messie

Ralf Kaiser 14. Dez 2009 13:08

Re: Test auf assigned(P) verusacht AV
 
Wie wäre es denn mit

Delphi-Quellcode:
TChart.RemoveSeries(ASeries: TCustomCharSeires);
bzw. (überladen):

Delphi-Quellcode:
TChart.RemoveSeries(Index: integer);
Ich denke mal, dass man die angebotenen Methoden benutzen sollte anstatt die Teile einfach mit .Free freizugeben!


Alle Zeitangaben in WEZ +1. Es ist jetzt 02:39 Uhr.
Seite 2 von 2     12   

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