property CaseSensitive: Boolean;

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

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

property Text: string;

и

property CommaText: string;

Они представляют все строки списка в виде одной строки. При этом в первом свойстве элементы списка разделены символами возврата каретки и переноса строки. Во втором свойстве строки заключены в двойные кавычки и разделены запятыми или пробелами. Так, для списка городов (Москва, Петербург, Одесса) свойство Text будет равно

Москва#$Р#$АПетербург#$Р#$АОдесса а (ЖЙСГЮ CommaText равно

"Москва", "Петербург", "Одесса".

Важно иметь в виду, что эти свойства доступны не только по чтению, но и по записи. Так что заполнить список вы сможете не только циклически, вызывая и используя методы Add или insert, но и одним-единственным Присвоением значения свойствам Text ИЛИ ComrnaTexL

Список может взаимодействовать с другими экземплярами класса TStringList.

Широко распространенный метод

procedure Assign (Source: TPersistent);

полностью переносит список Source в данный.

Метод

function Equals (Strings: TStrings): Boolean;

возвращает значение True, если элементы списка strings полностью совпадают с элементами данного списка.

Список можно загрузить из файла или потока. Для этого используются методы

procedure LoadFromFile(const FileName: string); И

procedure LoadFromStream(Stream: TStream) ; Сохранение списка выполняется методами

procedure SaveToFile (const FileName: string) ;

И

procedure SaveToStream(Stream: TStream) ;

Перед изменением списка вы можете получить управление, описав обработчик события

property CnChange: TNotifyEvent;

а после изменения

property OnChanging: TNotifyEvent;

На дискете, прилагаемой к этой книге, вы можете ознакомиться с примером ИШОЛЫОваРШЯ СПИСКОВ строк DemoStrings.

Список указателей

Для хранения списка указателей на размещенные в адресном пространстве структуры (объекты, динамические массивы, переменные) предназначен класс TList. Так же, как и список строк TStringList, список указателей обеспечивает эффективную работу с элементами списка.

Класс TList

Основой класса TList является список указателей. Сам список представляет собой динамический массив указателей, к которому можно обратиться через индексированное свойство

property Items [Index: Integer]: Pointer; Нумерация элементов начинается с нуля.

Прямой доступ к элементам массива возможен через свойство type

PPointerList = "TPointerList;
TPointerList = array[0..MaxListSize-1] of Pointer;
property List: PPointerList;

которое имеет атрибут "только для чтения".

Так как элементы списка являются указателями на некоторые структуры, прямое обращение к составным частям этих структур через свойство items невозможно. Как это можно сделать, рассказывается ниже в примере.

( Примечание J

В списке могут содержаться указатели на разнородные структуры. Не обяза-тельнохранить в списке только указатели на объекты или указатели на записи.

Реализованные в классе TList операции со списком обеспечивают потребности разработчика и совпадают с операциями списка строк.


⇐ Предыдущая страница| |Следующая страница ⇒

Программирование в Delphi 7



Новости за месяц

  • Октябрь
    2017
  • Пн
  • Вт
  • Ср
  • Чт
  • Пт
  • Сб
  • Вс