
- •Лекция № 1. Интегральная среда Delphi. Окна Delphi.
- •1. Среда Delphi. Главное окно.
- •2. Окно Инспектора объектов, Конструктора формы и Редактора кода.
- •Лекция № 2. Характеристика проекта. Компиляция и выполнение проекта.
- •1. Характеристика проекта Delphi.
- •2.Компиляция и выполнение проекта
- •Лекция № 3. Библиотека компонентов (vcl). Понятие класса и объекта.
- •1. Организация библиотеки компонентов
- •2. Понятие класса. Элементы класса.
- •Свойства
- •События
- •Лекция № 4. Общие свойства визуальных компонентов. События, методы. Обращение к объектам.
- •1. Основные общие свойства компонентов.
- •2. Основные общие методы компонентов.
- •3.Обращение к объектам.
- •Основные события.
- •Лекция № 5. Визуальные компоненты для отображения текстовой информации. Основные свойства компонентов.
- •Отображение текста
- •Лекция № 6. Визуальные компоненты для редактирования многострочных данных. Основные свойства компонентов.
- •1. Многострочный редактор
- •2.Общие элементы компонентов редактирования
- •Лекция № 7. Визуальные компоненты: работа со списками: простой, комбинированный. Основные свойства компонентов.
- •1.Работа со списками.
- •2.Комбинированный список
- •3.Общая характеристика списков
- •4.Другие характеристики списков
- •Лекция № 8. Компоненты-кнопки. Переключатели. Основные свойства компонентов.
- •Виды кнопок, используемые компоненты и их свойства.
- •2. Виды переключателей, используемые компоненты и их свойства.
- •Лекция № 9. Визуальные компоненты-контейнеры. Компоненты-закладки. Основные свойства компонентов.
- •1. Основные компоненты, используемые для объединения других компонентов.
- •Лекция № 10. Компоненты для редактирования данных в табличной форме.
- •Лекция № 11. Визуальные компоненты для изменения числового значения в заданном диапазоне. Визуальные компоненты для выбора дат. Основные свойства компонентов.
- •Визуальные компоненты для изменения числового значения в заданном диапазоне.
- •2.Визуальные компоненты для выбора дат.
- •Лекции № 12-13. Форма как Delphi-компонент. Жизненный цикл формы. Отображение формы. Управление доступом к форме. Особенности визуального проектирования форм.
- •1.Форма
- •2.Характеристики формы. Свойства
- •3.Характеристики формы. Методы.
- •4.Характеристики формы. События
- •5.Взаимодействие форм.
- •6.Шаблоны форм.
- •Лекции № 14-15. Главное и контекстное меню. Пункты меню, их свойства. Конструктор меню, настройка меню. Комбинации клавиш.
- •1.Главное и контекстное меню.
- •2.Пункты меню, их свойства, события.
- •3.Конструктор меню, настройка меню. Комбинации клавиш.
- •Лекция № 16. Использование диалоговых компонентов.
- •Лекция № 17. Компоненты-индикаторы. Компоненты для отображения геометрических фигур.
- •Компоненты-индикаторы.
- •Компоненты для отображения геометрических фигур.
- •Лекция № 18. Вывод сложной графической информации.
- •Лекция № 19. Создание элементов справочной системы. Создание строки состояния. Создание подсказок.
- •1. StatusBar (Строка состояния).
- •2. Использование в Delphi подсказок
- •Лекция № 20. Создание заставки, информационных окон.
- •1. Создание заставки.
- •Лекция № 21. Понятие и назначение dll-библиотек. Создание dll-библиотек. Использование dll-библиотек.
- •Создание dll-библиотек.
- •Использование dll-библиотек.
- •Лекция № 22. Понятие исключительной ситуации. Обработка исключений.
- •1. Понятие исключительной ситуации.
- •Обработка исключений.
- •Список использованных источников
- •Содержание
3.Общая характеристика списков
Простой и комбинированный список во многом похожи друг на друга и имеют много свойств, методов и событий. Основным для списков является свойство Items, в свою очередь, содержащее большое число свойств и методов, ориентированных на работу со строками.
Свойство Items типа Tstrings представляет собой массив строк и определяет количество элементов списка и их содержимое. Класс Tstrings является базовым типом и разработан специально для операций со строками.
Каждый элемент списка является строкой, к которой можно получить доступ по ее номеру в массиве строк items. Отсчет элементов списка начинается с нуля. Для обращения к первому элементу нужно указать items[0], ко второму — items[1], к третьему — items [2] и т. д. При операциях с отдельными строками программист должен контролировать номера строк в списке и не допускать обращения к несуществующему элементу.
Свойство Сount типа integer задает число элементов в списке. Так как первый элемент списка имеет нулевой номер, то номер последнего элемента равен count-1.
Пример: Присваивание элементам списка ListBox1 новых значений.
var n: integer;
...
for n:=0 to ListBoxi.Items.Count - 1 do
ListBox1.Items[n]:='Строка номер '+IntToStr(n);
Методы Add и Insert обеспечивают добавление строк в список.
Функция Add (const S: string): Integer добавляет в конец списка строку, заданную параметром s, а в качестве результата возвращает положение нового элемента в списке.
Процедура Insert (Index: Integer; const S: String) вставляет строку S на позицию с номером, определяемым параметром Index. При этом элементы списка, находившиеся до операции вставки в указанной позиции и ниже, смещаются вниз.
Пример. Добавление к комбинированному списку ComboBoxl строки «Нажата кнопка Buttonl».
procedure TForml.ButtonlClicklSender: TObject);
begin
ComboBoxl.Items.Add(‘Нажата кнопка Buttonl’);
end;
В процессе создания приложений периодически необходимо, чтобы один список содержал те же данные, что и другой. Достаточно просто согласование списков можно выполнить с использованием методов AddStrings и Assign. Оба метода позволяют при одном вызове увеличить содержимое списка более, чем на один элемент. Проверить необходимость выполнения операции согласования списков можно с помощью метода Equals.
Процедура AddStrings (strings: Tstrings) добавляет в конец списка группу строк, описываемую параметром strings.
Процедура Assign (Source: TPersistent) присваивает один объект другому, при этом объекты должны иметь совместимые типы. Применительно к спискам в результате выполнения процедуры происходит копирование информации из одного списка в другой с заменой содержимого. Если размеры списков (число элементов) не совпадают, то после замены число элементов заменяемого списка становится равным числу элементов копируемого списка.
Функция Equals (Strings: TStrings): Boolean используется для определения, содержат ли два списка строк одинаковую текстовую информацию. Если содержимое списков совпадает, то функция возвращает значение True, в противном случае — значение False. Содержимое списков одинаково, если списки равны по длине, и совпадают все их элементы.
Для удаления элементов списка используются методы Delete и clear.
Процедура Delete (index: integer) удаляет элемент с номером, заданным параметром index. При попытке удаления несуществующей строки сообщение об ошибке не выдается, но метод Delete не срабатывает.
Процедура Clear очищает список, удаляя все его элементы.
Пример. ComboBoxl.Items.Clear;
Процедура Move (CurIndex, NewIndex: integer) сдвигает элемент на позиции c номером Curindex в новую позицию с номером Newindex. Если указанный номер больше, чем есть элементов в списке, то возникает ошибка.
Выполнить поиск элемента в списке можно с помощью метода IndexOf.
Процедура IndexOf (const S: string): integer определяет, содержится ли в списке строка s. В случае успешного поиска процедура возвращает номер позиции найденной строки в списке, если строковый элемент не найден, то возвращается значение -1.
Класс TStrings имеет методы SaveToFile и LoadFromFile, позволяющие непосредственно работать с текстовыми файлами. Эти методы предоставляют возможность сохранения строк списка в текстовом файле на диске и последующего чтения списка строк из текстового файла. Символы текстового файла кодируются в коде ANSI.
Пример. Процедура сохранения содержимого списка.
ListBox3. Items. SaveToFile('c:\firma\family.txt’);
Процедура LoadFromFile (const FileName: string) заполняет список содержимым указанного текстового файла, предыдущее содержимое списка очищается. Если заданный файл отсутствует на диске, то возникает ошибка при выполнении приложения.
Пример. Загрузка содержимого списка.
procedure TForml.FormCreate(Sender: TObject);
begin
ComboBox2.Items.LoadFromFile('С:\TEXT\personal.txt');
end;
При конструировании приложения изменение списка строк выполняется с помощью редактора String List editor (Строковый редактор). Вызов строкового редактора выполняется через Инспектор объектов двойным щелчком кнопкой мыши в области значения свойства Items типа TStrings.
Строковый редактор позволяет добавлять строки в список, удалять их из списка и изменять содержимое имеющихся строк.