Класс TStringList
Для поиска связанных объектов используется метод:
function IndexOfObject(AObject: TObject): Integer;
В качестве параметра AObject должна передаваться ссылка на искомый объект. А свойство:
property CaseSensitive: Boolean;
Включает или отключает режим поиска и сортировки с учетом регистра символов.
Помимо свойства strings, содержимое списка можно получить при помощи свойств:
property Text: string;
И:
property CommaText: string;
Они представляют все строки списка в виде одной строки. При этом в первом свойстве элементы списка разделены символами возврата каретки и переноса строки. Во втором свойстве строки заключены в двойные кавычки и разделены запятыми или пробелами. Так, для списка городов (Москва, Петербург, Одесса) свойство Text будет равно:
Москва#$0#$АПетербург#$0#$АОдесса
А свойство CommaText равно:
"Москва", "Петербург", "Одесса".
Важно иметь в виду, что эти свойства доступны не только по чтению, но и по записи. Так что заполнить список вы сможете не только циклически, вызывая и используя методы Add или insert, но и одним-единственным присвоением значения свойствам Text или CommaText.
Список может взаимодействовать с другими экземплярами класса 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 SaveToStreamfStream: TStream);
Перед изменением списка вы можете получить управление, описав обработчик события:
property OnChange: TNotifyEvent;
А после изменения:
property OnChanging: TNotifyEvent;