Самоучитель по Delphi 7 для профессионалов


Класс TStringList - часть 5


function SortByStatus(List: TStringList; Indexl, Index2: Integer):

Integer;

begin

Result := AnsiCompareStr((List.Objects[Indexl] as TCityProps).Status,

(List.Objects[Index2] as TCityProps).Status; 

end;

function SortBySquare(List: TStringList; Indexl, Index2: Integer): Integer; 

begin if (List.Objects[Indexl] as TCityProps).Square <

(List.Objects[Index2] as TCityProps). Square) then Result := -1

 else if (List.Objects[Indexl] as TCityProps).Square =

(List.Objects[Index2] as TCityProps).Square then Result := 0

 else Result := 1;

  end;

function SortByPopulation(List: TStringList; Indexl, Ir.dex2: Integer): Integer; 

begin

if (List.Objects[Indexl] as TCityProps).Population < (List.Objects[Index2] as TCityProps). Population then Result := -1 

else

if (List.Objects[Indexl] as TCityProps). Population = (List.Objects[Index2] as TCityProps). Population

 then Result := 0

 else Result := 1; 

end;

Передаем одну из процедур в метод CustomSort:

Cities.CustomSort(SortByPopulation);

Для поиска нужного элемента используется метод

function Find(const S: string; var Index: Integer): Boolean;

В параметре s передается значение для поиска. В случае успеха функция возвращает значение True, а в параметре index содержится индекс найденного элемента.

Метод

function IndexOf (const S: string): Integer;

возвращает индекс найденного элемента s. Иначе функция возвращает — 1. 

Метод

function IndexOfName(const Name: string): Integer;

возвращает индекс найденного элемента, для которого свойство Names совпадает со значением параметра Name.

Для поиска связанных объектов используется метод

function IndexOfObject(AObject: TObject): Integer;

В качестве параметра AObject должна передаваться ссылка на искомый объект. А свойство

property CaseSensitive: Boolean;

включает или отключает режим поиска и сортировки с учетом регистра символов.

Помимо свойства strings, содержимое списка можно получить при помощи свойств




Начало  Назад  Вперед