Registriert seit: 28. Mai 2008
652 Beiträge
Delphi 10.1 Berlin Starter
|
AW: Sortieren nach DIN bei TStringList;
20. Mai 2020, 16:57
Delphi-Quellcode:
function DumbItDownFor95(const S1, S2: WideString; CmpFlags: Integer): Integer;
var
a1, a2: AnsiString;
begin
a1 := s1;
a2 := s2;
Result := CompareStringA(LOCALE_USER_DEFAULT, CmpFlags, PAnsiChar(a1), Length(a1),
PAnsiChar(a2), Length(a2)) - 2;
end;
function MyCompare(SL: TStringList; i1,i2: Integer): Integer;
begin
SetLastError(0);
Result := CompareStringW(LOCALE_USER_DEFAULT or NORM_IGNORECASE,
LANG_GERMAN or
SUBLANG_GERMAN or
SORT_GERMAN_PHONE_BOOK or
NORM_IGNORENONSPACE or
NORM_IGNORESYMBOLS,
PWideChar(SL[i1]),
Length(SL[i1]),
PWideChar(SL[i2]),
Length(SL[i2])) - 2;
case GetLastError of
0: ;
ERROR_CALL_NOT_IMPLEMENTED: Result := DumbItDownFor95(SL[i1],
SL[i2],
NORM_IGNORECASE or
NORM_IGNORENONSPACE or
NORM_IGNORESYMBOLS);
else
RaiseLastOSError;
end;
end;
Hier aus dem Forum.
So habe ich es kopiert, es bleibt bei der Sortierung Var.1 Ä=A. Willie.
Geändert von Willie1 (20. Mai 2020 um 17:03 Uhr)
|
|
Zitat
|