Forum: Algorithmen, Datenstrukturen und Klassendesign
by DeddyH,
5. Jun 2013
Den Begriff muss ich mir mal notieren :lol:
Forum: Algorithmen, Datenstrukturen und Klassendesign
by DeddyH,
5. Jun 2013
Nunja, das Hauptproblem, das ich persönlich mit Deinem Code habe, ist die Vermischung von Logik und Darstellung. Es liest sich so, als ob man unbedingt Memos bzw. Listboxen bräuchte, um das Problem zu lösen. Das geht natürlich auch, ist aber IMO unschön.
Nothing for ungood
Forum: Algorithmen, Datenstrukturen und Klassendesign
by DeddyH,
5. Jun 2013
Das habe ich (und zumindest Sir Rufo auch) so nicht verstanden. Vielmehr geht es darum, nach Spalte 2 zu sortieren, aber die Zugehörigkeit zu den anderen beiden Werten nicht zu verlieren. Und selbst wenn nach mehreren Spalten in einer bestimmten Reihenfolge sortiert werden soll, erweitert man den Callback entsprechend und fertig.
function CompareFunc(Item1, Item2: PRec): integer;
begin
...
Forum: Algorithmen, Datenstrukturen und Klassendesign
by DeddyH,
5. Jun 2013
Wie kommt Ihr eigentlich darauf, dass das nicht funktionieren soll? In diesem Beispiel ist FList ein privates Formularfeld vom Typ TList.
type
PRec = ^TRec;
TRec = record
Col1, Col2, Col3: string;
end;
...
//Befüllen
Forum: Algorithmen, Datenstrukturen und Klassendesign
by DeddyH,
5. Jun 2013
TList.Sort verwendet intern einen Quicksort. Dem muss man nun noch über einen Callback mitteilen wie die aktuellen Einträge zu vergleichen sind. Details dazu siehe unter TListSortCompare.
@musicman: das würde funktionieren, wenn es sich nur um einen String handeln würde, hier ist es aber ein Verbund aus mehreren Strings. Die muss man nun irgendwie zusammenhaltenm sei es in einem Record oder...