- •1. Теоретические основы объектно – ориентированного программирования 5
- •2. Использование системы программирования Delphi для создания Windows-приложений 9
- •3. Лабораторный практикум 27
- •Введение
- •1. Теоретические основы объектно – ориентированного программирования
- •1.1.Объектная модель и ее элементы.
- •1.2.Основные понятия объектно-ориентированного подхода - объект и класс.
- •1.3.Методы построения классов.
- •2. Использование системы программирования Delphi для создания Windows-приложений
- •2.1. Интерфейс интегрированной среды разработки Delphi
- •2.2. Синтаксические правила языка Object Pascal
- •2.3. Создание и структура пользовательских приложений в среде Delphi
- •2.4. Структура модуля (*.Pas)
- •2.5. Создание формы и написание откликов на события
- •1) Компоновка формы и задание свойств компонентов
- •2) Написание отклика на событие
- •2.6. Компиляция и исполнение программы
- •2.7. Ввод и вывод данных. Функции преобразования типов данных
- •3. Лабораторный практикум Лабораторная работа 1. Разработка приложения Калькулятор
- •Лабораторная работа 2. Использование курсоров в приложениях Windows.
- •Лабораторная работа 4. Создание простого текстового редактора.
- •Лабораторная работа 5. Рисование мышью в форме
- •Лабораторная работа 6. Применение графических компонентов
- •Лабораторная работа 7.Создание числовых изображений
- •Лабораторная работа 8. Создание текстурных заливок
- •Лабораторная работа 9. Поддержка справочной системы. Создание всплывающих подсказок.
- •Лабораторная работа 10.Создание видеопроигрывателя
- •Лабораторная работа 12.Создание браузера
- •Лабораторная работа 13. Работа с внешним файлом.
- •Лабораторная работа 14. Работа с базами данных.
- •Лабораторная работа 15. Создание многооконных приложений.
- •Литература Основная литература
- •Дополнительная литература
2.4. Структура модуля (*.Pas)
Имя модуля также совпадает с именем соответствующего файла модуля (*.pas). Каждый модуль в общем случае имеет следующую структуру:
unit <имя модуля>;
interface // Открытый интерфейс модуля
{Сюда могут помещаться списки подключаемых модулей, объявления типов, констант, переменных, функций и процедур, к которым будет доступ из других модулей.}
implementation // Реализация модуля
{Сюда могут помещаться списки подключаемых модулей, объявления типов, констант, переменных, к которым не будет доступа из других модулей. Тут же должны быть реализации всех объявленных в разделе interface функций и процедур, а также могут быть реализации любых дополнительных, не объявленных ранее функций и процедур.}
initialization // не обязательный
<Операторы, выполняемые один раз при первом обращении к модулю>
finalization // не обязательный
<Операторы, выполняемые при любом завершении работы модуля>
end.
Раздел interface представляет собой внешний интерфейс модуля. Поэтому подключаемые в нем модули, объявленные типы, классы, константы, переменные, функции и процедуры доступны внешним модулям, обращающимся к данному модулю.
Раздел implementation представляет собой реализацию модуля. Все подключаемые в нем модули, объявленные типы, классы, константы, переменные, функции и процедуры доступны только в пределах данного модуля. Основное тело модуля составляют коды, реализующие объявленные функции и процедуры.
Раздел initialization включает в себя операторы, которые выполняются только один раз при первом обращении программы к данному модулю. Этот раздел не является обязательным, В нем могут помещаться какие-то операторы, производящие начальную настройку модуля.
При наличии в программе нескольких модулей, содержащих разделы initialization, последовательность выполнения операторов этих разделов определяется последовательностью указания соответствующих модулей в операторах uses.
Например, если в головной программе имеется оператор
uses unit1, unit2, ...
то сначала будет выполняться (если он есть) раздел initialization модуля unit1, а затем раздел initialization модуля unit2.
Раздел finalization включает в себя операторы, которые выполняются только один раз при любом завершении работы программы, нормальном или аварийном. Этот раздел не является обязательным. В нем могут помещаться какие-то операторы, производящие зачистку «мусора» — удаление временных файлов, освобождение ресурсов памяти и т.п. Введение раздела finalization не разрешается, если в модуле нет раздела initialization. Последовательность выполнения операторов разделов finalization различных модулей обратная той, которая была описана выше для разделов initialization.
2.5. Создание формы и написание откликов на события
Универсальность Delphi строится на применении двух подходов к построению приложения:
с помощью визуальных средств Палитры компонентов;
с помощью редактора кода.
При этом, например, после построения формы приложения, вы можете перейти в режим ввода кода для написания кодов обработчиков событий объектов, созданных на этой форме, например, щелчки на кнопках. IDE предоставляет разработчику удобные инструменты создания и отладки программы, минимизируя написание программного кода и представляя возможности по просмотру библиотек классов, внедрение в программу новых объектов ActiveX, управлением всем создаваемым проектом. Так же среда содержит развитые средства отладки, тестирования и развертывания приложений на других компьютерах.