Forum: Object-Pascal / Delphi-Language
Delphi
by messie,
14. Dez 2009
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.
Ja, als Abkömmling von TComponent hat es die Methode...
Forum: Object-Pascal / Delphi-Language
Delphi
by messie,
14. Dez 2009
Ich habe sie nicht manuell freigegeben, sondern Chart99.SeriesList.Clear verwendet und damit das Problem erzeugt. Jetzt nehme ich wie angegeben Chart99.Series.Free Das löscht n.m.E nur den Verweis, nicht aber das List-Objekt.
Grüße, Messie
Forum: Object-Pascal / Delphi-Language
Delphi
by messie,
14. Dez 2009
Also, ich habe nochmal gesucht und dann das Problem behoben.
Dazu habe ich in der Hilfe gefunden. Warum die public Routine Chart99.SeriesList.Clear - die genau das tut - angeboten ist, ist mir schleierhaft.
Jedenfalls muss es statt eines nil setzen des n-ten Elements einen verbogenen Pointer geben, der genau zu der Zugriffsverletzung führt. Da ich keine Quellen und keine Debug-dcus habe, kann...
Forum: Object-Pascal / Delphi-Language
Delphi
by messie,
10. Dez 2009
Öhm, ich hatte eigentlich erwartet, dass assigned() mir eine Art geschützten Zugriff erlaubt. Dass eine Prüfung eines nachgeordneten Elements (Chart1.Series) am Zugriff auf ein möglicherweise nicht referenziertes Element Chart1 scheitert, wäre mir nicht klar, weil Chart1 eigentlich vorhanden sein sollte bzw ist.
Daher auch meine Frage nach der Funktionsweise von assigned().
Grüße, Messie