Thema: ADD Object

Einzelnen Beitrag anzeigen

choose

Registriert seit: 2. Nov 2003
Ort: Bei Kiel, SH
729 Beiträge
 
Delphi 2006 Architect
 
#2

Re: ADD Object

  Alt 14. Jan 2004, 11:14
Luckie hat bei diesem Ansatz eine Listbox als Container verwendet, die ihrerseits mit Items vom Typ TStrings die notwendige Funktionalität zum Verschieben (Move), Tauschen (Exchange) und auch Löschen (Delete) anbietet.
Delphi-Quellcode:
// verschieben des zweiten Elements auf die erste Position
Listbox1.Items.Move(1, 0);
Die tatsächlichen Daten werden nach diesem Ansatz jedoch mithilfe von Pointern auf einen Record abgelegt, für die bei Erzeugen Speicher alloziiert (GetMem bzw New) und beim Löschen wieder freigegeben werden muss (FreeMem bzw Dispose).
Sieh Dir einmal die Methoden btnAddClick und FormDestroy genauer an...

Wenn Du später mehr mit diesen Daten vorhast, als sie in Listboxen anzuzeigen, rate ich Dir von diesem einfach scheinenden Ansatz ab. Nicht nur, weil Du gezwungen bist, für jede Menge von Elementen eine ListBox zu verwenden oder weil Du bei jedem Hinzufügen und Entfernen selbst "Hand anlegen" musst, sondern weil eine elementare Funktionalität nichts mit dem GUI zu tun hat (spätestens wenn Du eine Kommandozeilenversion zum Sortieren Deiner Listen oä entwickeln willst, wirst Du feststellen, dass es merkwüdig ist, hierzu eine Listbox instanzieren zu müssen), oder willst Du für 5 Listen jeweils eine Listbox unsichtbar "auf Vorrat" halten, wenn Du nur eine zur Zeit anzeigen möchtest...?
gruß, choose
  Mit Zitat antworten Zitat