Цитата:
Сообщение от Daryll
Дело в том что у меня в StringGrid могут заносится ещё числа, так как
в таблице есть столбцы ещё: Название, Раздел, Цена.
А эти числа я написал для примера.
|
Т.е. тебе нужна число-текстовая сортировка. Для этого в Windows есть специальная API-функция
StrCmpLogicalW. Просто изменяешь правило сортировки примерно так:
Код:
function StrCmpLogicalW(psz1, psz2: PWideChar): Integer; stdcall; external 'shlwapi.dll';
function NumberSort(List: TStringList; Index1, Index2: Integer): Integer;
var
ws1, ws2: WideString;
begin
ws1 := List[Index1];
ws2 := List[Index2];
Result := StrCmpLogicalW(Pointer(ws1), Pointer(ws2));
end;
Или вот ещё
Rouse в своём блоге публикует свою аналогичную функцию чисто на Delphi: "
Сортировка списка по аналогу "Проводника Windows""