Einzelnen Beitrag anzeigen

aphexx

Registriert seit: 23. Apr 2010
19 Beiträge
 
#20

AW: Memo lässt Zeilen verschwinden

  Alt 30. Mär 2011, 21:28
wie wäre es statt des Arrays eine Tlist zu verwenden?
Da gibt es eine funktionierende Sortierung.

Gruß
K-H
Ich hab' nun das Array in eine funktionierende TList umgewandelt. Die Datenübergabe funzt perfekt, allerdings habe ich jetzt noch ein kleines Problem mit der Sortierung. Die Reihenfolge ist überhaupt nicht korrekt und sieht nur 'etwas' sortiert aus. Außerdem wird die Reihenfolge jedes mal geändert, wenn ich die Liste sortiere. Klar ist das erwünscht, wenn ich meine Boolean-Variable mit ins Spiel bringe, aber ohne Variable muss das Ergebnis doch immer gleich aussehen. Für eine absteigende Sortierung (siehe Code-Block) würde ich in der if-Klausel X > Y schreiben. Wäre das korrekt?


Nach ein wenig Recherche sieht meine TListSortCompare so aus:
Delphi-Quellcode:
function Dh_CompareDateB(Item1, Item2: pointer):integer;
var
  X, Y: TDateTime;
begin
  x := StrToDateTime(PEntry(Item1).DatumZeit);
  y := StrToDateTime(PEntry(Item2).DatumZeit);
  if (X < Y)
  then Result := 1
  else if (X = Y) then Result := 0
                    else Result := -1;
end;
@Jumpy: Danke für's aufräumen, ich habs umgesetzt.
  Mit Zitat antworten Zitat