Студопедия

Главная страница Случайная страница

Разделы сайта

АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторикаСоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника






Списки и коллекции






В процессе разработки программного кода приложения часто бывает необходимо хранить наборы различных констант или переменных. Для работы со строковыми списками предназначены классы TStrings и TStringList. Компоненты VCL TCombobox, TList, TDBComboBox представляют собой оболочки для списков строк. В других компонентах (TМemo, TStringGrid) списки обеспечивают представление данных. Любые типы данных можно заносить в список указателей, который реализован в классе TList. Использование наборов объектов, которые называются коллекциями, осуществляется при помощи классов TСollection и TСоllectionItem.

Класс TStrings является базовым абстрактным классом, который обеспечивает потомков основными свойствами и методами, позволяющими создавать работоспособные списки строк. Его прямым предком является класс TPersistent. Основой механизма списка является свойство, предназначенное для хранения элементов списка:

Strings [Index: Integer]: String;

Обращение к отдельному элементу списка может осуществляться через это свойство:

SomeStrings.Strings[i]: = Edit1.Text; или SomeStrings [i]: = Edit1.Text

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

Objects [Index: Integer]: TObject

Для добавления к строке объекта из списка используется метод AddObject, например:

SomeStrings.AddObject (‘SomeItem’, TSityProps.Create);

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

Класс TSringList обеспечивает реальное использование списков строк в приложении. Свойства и методы класса можно посмотреть в справочной литературе, здесь рассмотрим только некоторые из них.

Добавление новых строк осуществляется при помощи методов Add и Insert. Первый метод добавляет строку в конец списка, а второй вставляет ее в указанное место.

Для добавления одного объекта можно использовать метод AddObject. Для того чтобы добавить объект к уже существующей строке, необходимо сначала создать объект, а затем присвоить его свойству Object.

Строки списка можно отсортировать в порядке возрастания при помощи свойства Sorted или метода Sort.

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

Коллекция представляет собой разновидность списка указателей, оптимизированную для работы с объектами определенного вида. Сама коллекция инкапсулирована в классе TСollection. Элемент коллекции должен быть экземпляром класса, унаследованного от класса TСollectionItem. Это облегчает программирование и позволяет обращаться к свойствам и методам объектов напрямую. Например, панели компонента TСoolBar объединены в коллекцию. Класс TСoolBands, объединяющий панели, является наследником класса TСollection. Отдельная панель является экземпляром класса TСoolBar, происходящего от класса TСollectionItem.






© 2023 :: MyLektsii.ru :: Мои Лекции
Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав.
Копирование текстов разрешено только с указанием индексируемой ссылки на источник.