Hallo berens,
abgesehen von der etwas unglücklichen Benutzing von "If" sehe ich da erst einmal keinen Fehler. Allerdings halte ich folgendes für etwas schneller:
Delphi-Quellcode:
if TLayoutElement(Item1).Top < TLayoutElement(Item2).Top then Result := -1
else
if TLayoutElement(Item1).Top > TLayoutElement(Item2).Top then Result := 1
else
if TLayoutElement(Item1).Top = TLayoutElement(Item2).Top then begin
if length(TLayoutElement(Item1).Text) < Length(TLayoutElement(Item2).Text) then
Result := -1
else
Result := 1;
end;
So läuft er nicht für jeden Satz in drei "If"s.
@Hawkeye219
Wenn er aber unbeding keine "gleichen" Daten haben will? Sowas soll's ja geben.
Gruß
K-H
Oh ich hab nicht aufgepasst:
Delphi-Quellcode:
if length(TLayoutElement(Item1).Text) < Length(TLayoutElement(Item2).Text) then
Result := -1
else
Result := 1;
Wenn aber der Text gleich ist gibt's ein Problem.
K-H