Entwickler-Ecke

Delphi Language (Object-Pascal) / CLX - TPoints mit TList verwalten


Adory - Di 15.02.11 15:24
Titel: TPoints mit TList verwalten
Hallo,

ich möchte mehrere Koordinaten(Point) mit einer TList verwalten. Da im Laufe des Programms auch oft Koordinaten hinzukommen und wieder gelöscht werden, möchte ich ungern ein dynamisches Array verwenden; Die TList soll mir die Arbeit des vergrößern/verkleinern des "Arrays" abnehmen. Zusätzlich zu jeder Koordinate sollte nach Möglichkeit noch ein weiterer Wert mit abgespeichert werden (Zahl).

Ein Datensatz der List soll also folgendes enthalten: PosX, PosY & Zahl

Ist so etwas überhaupt möglich? Hat jemand eine Idee, wie man das (möglichst einfach) lösen könnte? Am besten mit einem Beispiel für einen Zugriff auf die Liste.

Danke! :)


Nersgatt - Di 15.02.11 15:30

Mach Dir eine Klasse, die die gewünschtern Daten speichert. Das kann ja sowas minimales sein wie

Delphi-Quelltext
1:
2:
3:
4:
5:
6:
TIrgendwas = Class
Public
  PosX : Integer;
  PosY : Integer;
  Zahl : Integer;
End;


Und das verwaltest Du dann in einer TList:
http://www.delphi-treff.de/tutorials/vcl/tlist/einleitung/

Notfalls kannst Du auch statt der Klasse einen Record nehmen.

Jens


jaenicke - Di 15.02.11 15:31

Wobei ich eine Klasse + TObjectList (Unit Contnrs) empfehlen würde. ;-)


Nersgatt - Di 15.02.11 15:42

Jupp, definitiv richtig. Da hat man nicht so viel Arbeit mit der Speicherverwaltung und es ist ein bisschen komfortabler.
Ganz komfortabel wirds, wenn man sich eine Ablelitung von TObjectList schreibt, den genau auf die eigene Klasse zugeschnitten ist. Ein bisschen Aufwand, der sich aber meistens bezahlt macht.


jaenicke - Di 15.02.11 16:03

Man kann sich auch eine entsprechende Includedatei erstellen. Dann hat man auch vor Delphi 2009 bereits eine automatisch typisierte TObjectList. ;-)


Adory - Di 15.02.11 16:13

Super, schonmal vielen Dank für eure Antworten! Ich werde es später ausprobieren :zwinker:

Vielleicht hat sogar jemand noch ein Codebeispiel für mich?


Nersgatt - Di 15.02.11 16:20

user profile iconAdory hat folgendes geschrieben Zum zitierten Posting springen:
Vielleicht hat sogar jemand noch ein Codebeispiel für mich?

Biddeschön:
http://www.delphi-treff.de/tutorials/vcl/tobjectlist/grundlagen/

Besonders der letzte Abschnitt des Tutorials, da gehts um die ANpassung an die eigene Klasse.