Ich habe diese Lösung implementiert:
Code:
function Compare(List: TStringList; Index1, Index2: Integer): Integer;
begin
Result := Sign(StrToInt(List.Values[List.Names[Index2]]) - StrToInt(List.Values[List.Names[Index1]]));
end;
procedure HandleMostUsedStrings();
var
I: Integer;
S: string;
SL: StringList;
begin
SL := TStringList.Create;
repeat
S := GetOneString;
if not TryStrToInt(MostFrequentlyUsed.Values[S], Count) then Count := 0;
SL.Values[S] := IntToStr(Count + 1);
until AllStringsGetted;
SL.CustomSort(Compare);
for I := SL.Count - 10 to SL.Count - 1 do
HandleString(SL.Names[I]);
SL.Free;
end;
... natürlich müssen noch "=" in den Strings escaped werden, damit sie in der StringList nicht stören...
Mein Beispiel jedoch schon. Es soll nur zeigen wie man es machen kann.
t.roller wollte einfach sich wichtig machen, indem er zeigt, dass andere zu blöd sind zu suchen, statt eine neue Frage zu stellen. Ging leider in die Hose, indem er zeigte selbst meine Frage nicht verstanden zu haben.
Zitat von
t.roller:
"Viele Menschen sind zu dumm, die richtigen Fragen zu stellen."
Es ist ein erhabenes Gefühl besser zu sein als andere. Aber wer das zur Schau stellt zeigt nur, dass er wichtig sein möchte - das machen nur dumme Menschen.