
- •Основы программирования
- •Введение
- •Основы delphi
- •Общая технология программирования
- •Язык программирования
- •Объектно-ориентированное программирование
- •Визуальное программирование
- •Событийно управляемое программирование
- •Windows-приложение
- •Среда программирования
- •Первоначальные сведения о проекте приложения
- •Встроенный отладчик
- •Использование встроенных классов
- •Иерархия классов
- •Использование палитры компонентов и инспектора объектов
- •Использование графики
- •Основные инструменты
- •Основные характеристики шрифтов
- •Графические данные и палитра
- •Некоторые общие свойства компонентов
- •Сохранение проекта
- •Построение простейшего проекта
- •Понятие исключительной ситуации
- •Введение в object pascal
- •Структура приложения
- •Структура программы-проекта
- •Структура модуля
- •Пример 1
- •Описания программных элементов
- •Программные элементы и адреса памяти
- •Области видимости
- •Правила записи имен
- •Время жизни идентификаторов
- •Использование локальных переменных в примере 1
- •Использование глобальных переменных в примере 1
- •Простые типы
- •Целые типы
- •Целые типы
- •Некоторые операции с целым типом
- •Символьные типы
- •Логические типы
- •Тип перечень
- •Интервальный тип
- •Вещественный тип
- •Вещественные типы
- •Некоторые операции с вещественным типом
- •Тип дата-время
- •Выражения
- •Константы
- •Типизированные константы.
- •Переменные
- •Операции
- •Унарная операция not (отрицание)
- •Логические операции and, or, xor
- •Функции
- •Порядок вычисления выражений
- •Виды операторов
- •Простые операторы
- •Составной оператор
- •Операторы условного перехода
- •Оператор if
- •Пример 2
- •Оператор case
- •Пример 3
- •Использование enter в примере 3
- •Операторы цикла
- •Оператор цикла for
- •Пример 4
- •Оператор цикла while
- •Пример 5
- •Оператор цикла repeat
- •Пример 6
- •Использование процедур break и continue
- •Пример 7
- •Массивы
- •Статические массивы
- •Динамические массивы
- •Пример 8
- •Пример 9
- •Записи (объединения)
- •Оператор with
- •Пример 10
- •Совместимость и преобразование типов данных
- •Идентичность типов
- •Совместимость типов
- •Совместимость по присваиванию
- •Преобразование типов
- •Операторы обработки исключительных ситуаций
- •Пример 11
- •Множества
- •Операции над множествами
- •Пример 12
- •Вариантный тип данных
- •Процедуры и функции
- •Процедура
- •Функция
- •Рекурсия
- •Формальные и фактические параметры
- •Параметры-значения
- •Параметры-переменные
- •Параметры-константы
- •Параметры без типа
- •Массивы открытого типа
- •Парамеры по умолчанию
- •Процедура exit
- •Директивы подпрограммы
- •Соглашения по передаче данных
- •Директива forward
- •Директива external
- •Директива assembler
- •Перегруженные подпрограммы
- •Пример 13
- •Инкапсуляция
- •Класс как объектный тип
- •Наследование
- •Области видимости
- •Операции is и as
- •Виды методов
- •Методы virtual и полиморфизм
- •Методы dynamic
- •Методы message
- •Методы abstract
- •Методы override
- •Методы class
- •Пример 14
- •Динамическое создание компонентов
- •Использование класса со счетчиком объектов
- •Отслеживание разрушения объектов
- •События
- •Указатели на методы
- •Пример 15
- •Типы ссылки на класс
- •Свойства
- •Свойства simple
- •Свойства enumerated
- •Свойства set
- •Свойства object
- •Свойства array
- •Задание начальных значений свойствам
- •Пример 16
- •Файловые типы
- •Текстовые файлы
- •Типизированные файлы
- •Файлы без типа
- •Дополнительные процедуры и функции
- •Пример 17
- •Компонент tmainmenu
- •Указатели
- •Пример 18
- •Динамические структуры данных
- •Однонаправленные списки
- •Двунаправленные списки
- •Стеки, очереди
- •Бинарные деревья
- •Пример 19
- •Процедурный тип
- •Программные единицы dll
- •Пример 20
- •Технологии программирования
- •Потоки данных
- •Пример 21
- •Пример 22
- •Интерфейс drag and drop
- •Пример 23
- •Технология drag and dock
- •Пример 24
- •Использование функций windows api при работе с файлами
- •Пример 25
- •Использование отображаемых файлов
- •Пример 26
- •Программные потоки
- •Приоритеты потоков
- •Класс tthread
- •Пример 27
- •Использование блокировки в примере 27
- •Многопоточное приложение в примере 28
- •Проблемы синхронизации потоков
- •Список используемых в примерах компонентов
- •Список используемых компонентов и других классов
- •Библиографический список
- •Оглавление
Среда программирования
Интегрированная среда разработки приложений в Delphi называется IDE (Integrated Development Environment). Под этим шикарным названием скрывается целая коллекция окон, меню и программ, которые позволяют проектировать интерфейс, связывать код с каждым экранным элементом и полностью отлаживать приложение внутри Delphi.
При входе в IDE стандартно появляются 4 окна: главное окно (рис.2), окно инспектора объектов (Object Inspector), окно форм (Form Designer) и окно редактора кода (Code Editor).
Рис. 2. Главное окно IDE.
Главное окно является управляющим центром IDE. Оно управляет файлами, включаемыми в приложение, и выполняет всю работу с их сопровождением, компиляцией и отладкой. Оно состоит из трех отдельных элементов: панель меню (Menubar), панель инструментов (Speedbar) и палитру компонентов (Component Palette).
О
кно
инспектора объектов, оформлено в виде
двухстраничного блокнота (рис.3). Это
окно используется для настройки
компонента или формы. Первая страница
используется для настройки свойств
(Properties),
вторая – для настройки событий (Events).
Ф
Рис. 3. Окно инспектора объектов.
Рис. 4. Окно проектировщика форм.
По умолчанию для каждого нового проекта создается одно окно, которое называется формой. В дальнейшем к проекту могут быть добавлены другие формы. Но только одна форма может быть активной.
Окно редактора кода (Code Editor, рис.5 справа) позволяет редактировать коды всех модулей (программных единиц), входящих в разрабатываемое приложение. Это окно оформлено в виде многостраничного блокнота. Каждая страница отображает код той или иной программной единицы, входящей в приложение. С помощью проектировщика форм и инспектора объектов представляются все виды частей “фасада” приложения, но без редактора кода нельзя связать эти части в единое целое.
Рис. 5. Окно редактора кода и окно Code Explorer.
По умолчанию слева от редактора кода находится окно Code Explorer (рис. 5). Оно используется для поиска в редакторе кода какого-либо программного элемента: типа, класса, метода и т.д. Это окно можно выделить в самостоятельное и перенести в другое место.
IDE Delphi обладает большой гибкостью в настройке рабочей среды. Для настройки используется диалоговое окно Environment Options, которое выбирается, раскрывая пункты меню Tools - Options.
Первоначальные сведения о проекте приложения
Основу любой разработки в Delphi составляет проект, объединяющий различные элементы в единое целое и обеспечивающий требуемую структуру для Windows-приложения. В простейшем случае в проект входят модули и формы различных типов. Как правило, из одного проекта получается одно приложение.
Самый маленький проект состоит из главного файла (программы-проекта), который имеет расширение DPR. Кроме этого файла в проект входят файлы с расширениями CFG (настройки проекта), DOF (опции проекта), DSK (настройки среды), RES (файл ресурсов, в котором хранятся курсоры, значки, строки сообщений и др.). Главный файл проекта имеет стандартную форму и автоматически генерируется средой Delphi.
Обычный проект, кроме главного файла, включает в себя, как минимум, одну форму и связанную с этой формой программу модуля. Форма служит для размещения на ней интерфейсных элементов. Программа модуля позволяет на языке Object Pascal связать эти элементы в единое целое. Форма хранится в файле с расширением DFM (файл ресурсов формы), а программа модуля – в файле с расширением PAS.
Модуль – это текстовый файл с исходным программным кодом. С модулем может быть связана форма, представляющая отдельное окно. Программная заготовка для модуля генерируется автоматически при построении формы. В состав проекта могут входить модули, не имеющие связанных с ними форм.
При входе в IDE Delphi автоматически строится стандартный проект, включающий одну форму и связанный с ней один модуль. Если требуется выбрать какой-либо другой вариант проекта, то используется репозиторий (специальное хранилище, Repository, рис. 6).
Рис. 6. Страница New репозитория.
В репозитории содержатся не только варианты проектов, но и элементы, которые можно добавлять в проект. Открыть репозиторий можно при помощи команды New-Other меню File. Если перед этим закрыть проект, предлагаемый по умолчанию (Close Аll в меню File), и выбрать в репозитории Application, то получим стандартный проект, т.е. такой же, который в самом начале был закрыт.
Для управления составными частями проекта служит диспетчер проектов (Project Manager, рис. 7).
Рис. 7. Менеджер проектов.
Данное окно вызывается командой Project Manager меню View главного окна Delphi. В общем случае в Delphi всегда создается группа проектов. Простой проект представляет группу из одного проекта.