sortowanie prawidlowe stringlisty

0

Hi all,

mam taką sytuację, że trzymam w stringlist scieżki do plików, ale chciałbym żeby były poprawnie posortowane względem numeru,
który występuje w nazwie. W tej chwili jest tak:

xxx\1.bmp
xxx\10.bmp
xxx\11.bmp
xxx\2.bmp
...

Widać w czym jest błąd, jak to posortować 'po kolei' ?
Dzięki.

2

to jest POPRAWNIE posortowane. Jak chcesz mieć posortowane naturalnie to http://stackoverflow.com/questions/2175066/how-can-i-get-tstringlist-to-sort-differently-in-delphi

0

nie słyszałem wcześniej o customsort :)

skleciłem coś takiego i działa :)

 function PorownajSciezki(Lista: TStringList; Index1, Index2: Integer): Integer;
var                         
  Wartosc, Wartosc2: Integer;
begin
  Wartosc := StrToInt(ChangeFileExt(ExtractFileName(Lista[Index1]), ''));
  Wartosc2 := StrToInt(ChangeFileExt(ExtractFileName(Lista[Index2]), ''));
  if Wartosc < Wartosc2 then
    Result := -1
  else
    if Wartosc > Wartosc2 then
    Result := 1
  else
    Result := 0;
end;

pozdrawiam

0

jest jeszcze coś takiego jak CompareValue

1 użytkowników online, w tym zalogowanych: 0, gości: 1