Hola.
Creo que te resultará mas sencillo usar el método
CustomSort de la clase
TStringList, ejemplo:
Código PHP:
int __fastcall SortCompare( TStringList* TS, int i1, int i2 )
{
return TS->Strings[i2].AnsiCompare(TS->Strings[i1]);
}
void __fastcall TForm1::Button1Click(TObject *Sender)
{
TStringList *TS = new TStringList;
TS->Clear();
TS->AddObject("dato1",(TObject*)100);
TS->AddObject("dato2",(TObject*)200);
TS->AddObject("dato3",(TObject*)300);
TS->AddObject("dato4",(TObject*)400);
TS->AddObject("dato5",(TObject*)500);
// ordenar
TS->CustomSort(SortCompare);
// mostrar
for(int i = 0; i < TS->Count; i++)
Memo1->Lines->Add(TS->Strings[i] + " - " +
(int)(TS->Objects[i]));
delete TS;
}
Salida:
Saludos