Что включает в себя интегрированная среда делфи. Дидактические возможности Delphi. Обзор приложений созданных в среде Delphi

22.04.2021 Новости

Данная среда программирования была выбрана мной из-за того, что язык программирования Delphi я знаю лучше всего и данный язык преподаётся в нашем колледже, к тому же, у этой среды весьма удобный интерфейс для разработки и поддерживаются все функции, которые потребуются мне при разработке системы для создания и редактирования тестов.

Основной упор модели в Delphi делается на максимальном не использовании кода. Это позволяет разработчикам строить приложения весьма быстро из заранее подготовленных объектов, а также дает им возможность создавать свои собственные объекты для среды Delphi. Никаких ограничений по типам объектов, которые могут создавать разработчики, не существует. Действительно, все в Delphi написано на нем же, поэтому разработчики имеют доступ к тем же объектам и инструментам, которые использовались для создания среды разработки. В результате нет никакой разницы между объектами, поставляемыми Borland или третьими фирмами, и объектами, которые можно создать.

Рис. Среда разработки визуальных приложений

В стандартную поставку Delphi входят основные объекты, которые образуют удачно подобранную иерархию из 270 базовых классов. На Delphi можно одинаково хорошо писать как приложения к корпоративным базам данных, так и программы для измерительных систем. Разработка интерфейса в Delphi является довольно простой задачей для программиста.

Delphi обеспечивает исчерпывающую библиотеку классов - Визуальную Компонентную Библиотеку (VCL), Библиотека Borland Component (CLX), и блок Быстрой разработки (RAD) инструментальные средства, включая приложение и шаблоны форм, и мастера. Delphi объектно-ориентированное программирование.

Из нестандартных улучшений Borland, внесенных в объектный Pascal надо отметить свойства (Properties) и перезагружаемость процедур и функций (Overloading).

Достоинством Delphi является простота, скорость и эффективность. Delphi имеет самый быстрый из всех компилятор. Другим достоинством является простота изучения Object-Pascal. Библиотека VCL позволяет программировать и в среде Windoows API. Модель программирования в Delphi компонентная, что позволяет использовать множество уже созданных компонент, создавать свои и использовать дополнительные чужие. К достоинствам можно отнести достаточно быстрый браузер классов и мгновенный вывод подсказки авто завершения кода.

Недостатком Delphi можно назвать наличие меньшего числа функций, чем у C++: не достает шаблонов, перегрузки операторов и объектной модели, похожей на модель C++. После использования объектов их надо уничтожить, вызывая метод Free. В C++ объекты уничтожаются автоматически при выходе из зоны видимости. Кроме того, заметно разрастание ехе-файлов, генерируемых Delphi.

Компилятор встроенный в Delphi обеспечивает трансляцию Object Pascal программы в объектный код, выявляет синтаксические ошибки, обрабатывает исключительные ситуации, позволяет производить отладку, осуществляет линковку и создает исполняемый модуль. В Delphi компиляция производится непосредственно в машинный код.

Особенности технологии CodeInsight в редакторе кодов это интеллектуальный редактор, позволяющий выполнять копирование/вставку, выбор из списка зарезервированных слов, указание вида и места синтаксических ошибок.

В Delphi используется Инкапсуляция (объединение записей с процедурами и функциями), Наследование (использование объекта для построения иерархии порожденных объектов), Полиморфизм (задание одного имени действию, которое передается вверх и вниз по иерархии объектов) - традиционные для ООП.

Visual Componentes Librares (VCL) - это иерархия из 270 базовых классов. построения пользовательского интерфейса, объекты управления данными, графические объекты, объекты мультимедиа, диалоги и объекты управления файлами, управление DDE и OLE

Borland Database Engine (BDE) - препроцессор операционной системы обеспечивает доступ к объектам БД в Delphi, основанным на SQL: Oracle, Sybase, Informix и InterBase, файлам формата. dbf, или. db (Paradox) или. mdb (Access).

Уникальные возможности Delphi состоят в том, что разработчики могут добавлять CASE-инструменты, кодовые генераторы, а также авторские help"ы, доступные через меню Delphi.

Технология Two-way tools обеспечивает однозначное соответствие между визуальным проектированием и классическим написанием текста программы. Это означает, что разработчик всегда может видеть код, соответствующий тому, что он построил при помощи визуальных инструментов и наоборот.

Инспектор объектов представляет из себя отдельное окно, где можно в период проектирования программы устанавливать значения свойств и событий объектов (Properties & Events).

Менеджер проектов дает возможность разработчику просмотреть все модули в соответствующем проекте и снабжает удобным механизмом для управления проектами.

Основа Object Pascal это механизм Run-Time Туре Information (RTTI), т.е. информации о типах на этапе выполнения программы и свойств объектных типов - классов, с понятием свойства (property); а также обработки исключительных ситуаций (exception handling).

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

Основные файлы проекта Delphi это PROJECT1. DPR, UNIT1. PAS, UNIT1. DFM - сведения о форме,PROJECT1. RES содержит иконку для проекта, PROJECT1. OPT по умолчанию, является текстовым файлом для сохранения установок, связанных с данным проектом, После компиляции программы получаются файлы с расширениями: DCU - скомпилированные модули, EXE - исполняемый файл. Установки Editor Options сохраняются в файле DELPHI. INI, который находится в директории Windows.

Технология редактирования ошибок программы предусматривает переход к фрагменту кода, который содержит ошибку, при этом надо установить курсор в строку с сообщением об ошибке и из контекстного меню выбрать команду Edit source.

Предупреждения и подсказки появляются при обнаружении в программе неточностей, которые не являются ошибками, компилятор выводит подсказки (Hints) и предупреждения (warnings).

Ошибки времени выполнения (run-timeerrors) или исключения (exceptions).

Страница настроек Линкера Options позволяет произвести выбор установок, которые напрямую влияют на текущий проект, это могут быть, к примеру, директивы компилятора проверки стека (stack checking) или диапазона (rangechecking).

Страница настроек Directories/Conditionals Options дает возможность расширить число директорий, в которых компилятор и линковщик ищут DCU файлы.

Страница настроек Editor Options позволяет настроить тонкие детали работы Редактора.

Страницы настроек EditorOptions, EditorDisplay и EditorColors позволяют изменить цвета и "горячие" клавиши, используемые IDE.

Пять основных окон ООП среды программирования Delphi:

дизайнер Форм (Form Designer);

окно Редактора Исходного Текста (Editor Window);

палитра Компонент (Component Palette);

инспектор Объектов (Object Inspector);

справочник (On-line help).

Структурная обработка исключительных ситуаций это система, позволяющая программисту при возникновении ошибки (исключительной ситуации) связаться с кодом программы, подготовленным для обработки такой ошибки. Это выполняется с помощью директив, которые как бы "охраняют” фрагмент кода программы и определяют обработчики ошибок, которые будут вызываться, если что-то пойдет не так в "охраняемом” участке кода.

Основные компоненты Delphi:

Компонент Edit. Text позволяет производить чтение текста из окна Edit

Компонент TCheckBox отображает строку текста с маленьким окошком рядом.

Компонент TRadioButton позволяет выбрать только одну опцию из нескольких.

Компонент TListBox нужен для показа прокручиваемого списка.

Компонент TStringGrid служит для представления текстовых данных в виде таблицы.

Компонент TMainMenu позволяет поместить главное меню в программу.

Компонент TPopupMenu позволяет создавать всплывающие меню.

Компонент TBitBtn представляет кнопку, на которой можно разместить картинку.

Компонент TDrawGrid служит для представления данных любого типа в виде таблицы. Доступ к каждому элементу таблицы происходит через свойство CellRect.

Компонент TImage отображает графическое изображение на форме. Воспринимает форматы BMP, ICO, WMF. Если картинку подключить во время дизайна программы, то она прикомпилируется к EXE файлу.

Компонент TShape служит для отображения простейших графических объектов на форме: окружность, квадрат и т.п.

Диалоги Windows организуются компонентами диалога: OpenDialog - выбрать файл, SaveDialog - сохранить файл, FontDialog - настроить шрифт, ColorDialog - выбор цвета, PrintDialog - печать, PrinterSetupDialog - настройка принтера.

Компонент страницы System - TTimer это таймер, событие OnTimer периодически вызывается через промежуток времени, указанный в свойстве Interval. Период времени может составлять от 1 до 65535 мс.

Компонент страницы System - TFileListBox это специализированный ListBox, в котором отображаются файлы из указанной директории (св-во Directory).

Компонент страницы System - TDirectoryListBox это специализированный ListBox, в котором отображается структура директорий текущего диска. В св-ве FileList можно указать TFileListBox, который будет автоматически отслеживать переход в другую директорию.

Компонент страницы System - TDriveComboBox это специализированный ComboBox для выбора текущего диска. Имеет свойство DirList, в котором можно указать TDirectoryListBox, который будет отслеживать переход на другой диск.

Компонент страницы System - TMediaPlayer служит для управления мултимедйными устройствами (типа CD-ROM,MIDI и т.п.). Выполнен в виде панели управления с кнопками Play, Stop, Record и др.

Интегрированная среда разработки проекта. Пять основных окон интегрированной среды разработки: главное, форма, окно редактирования кодов, объект инспектор, броузер.

Особенностью интегрированной среды разработки является визуальное (а, следовательно, и скоростное) построение приложений из программных прототипов.

Компиляция, линкование и запуск программ. Задачу преобразования исходной программы в машинный код выполняет специальная программа - компилятор.

Компилятор выполняет последовательно две задачи:

1. Проверяет текст исходной программы на отсутствие синтаксических ошибок.

2. Создает (генерирует) исполняемую программу - машинный код.

При возникновении ошибки в программе, запущенной из Delphi, среда разработки прерывает работу программы, о чем свидетельствует заключенное в скобки слово Stopped в заголовке главного окна Delphi, и на экране появляется диалоговое окно, которое содержит сообщение об ошибке и информацию о типе (классе) ошибки.

Компиляция программы, в которой есть алгоритмическая ошибка, завершается успешно. При пробных запусках программа ведет себя нормально, однако при анализе результата выясняется, что он неверный. Для того чтобы устранить алгоритмическую ошибку," приходится анализировать алгоритм, вручную "прокручивать" его выполнение.

Типы данных и выражений. К типам данных относятся целочисленные, вещественные, логические, строковые и символьные:

Shortint - 128-127 8 битов

Smallint - 32 768 - 32 767 16 битов

Longint - 2 147 483 648 - 2 147 483 647 32 бита

Int64 - 263 - 263 - 1 64 бита

Byte 0-255 8 битов, беззнаковый

Word 0-65 535 16 бит, беззнаковый

Longword 0 - 4 294 967 295 32 бит беззнаковый

универсальный целый тип - Integer

универсальный вещественный тип - Real

тип Ansichar - это символы в кодировке ANSI, которым соответствуют числа в диапазоне от 0 до 255;

типwidechar - это символы в кодировкеUnicode, им соответствуют числа от 0 до 65 535.

ObjectPascal поддерживает и наиболее универсальный символьный тип -

тип shortstring представляет собой статически размещаемые в памяти компьютера строки длиной от 0 до 255 символов;

тип Longstring представляет собой динамически размещаемые в памяти строки, длина которых ограничена только объемом свободной памяти;

тип WideString представляет собой динамически размещаемые в памяти строки, длина которых ог-раничена только объемом свободной памяти. Каждый символ строки типа WideString является Unicode-символом

тип string эквивалентен типу shortstring.

Проектирование и инициализация общих элементов управления предполагает использование:

интерфейса присоединения Drag-and-Dock;

интерфейса переноса Drag-and-Drop;

усовершенствованного масштабирования;

управления фокусом;

управления мышью;

Создание всплывающих подсказок. Если задержать курсор, например, над кнопкой или компонентом палитры самой среды Delphi, появляется маленький прямоугольник яркого цвета (окно подсказки), в котором одной строкой сказано о названии этого элемента или связанном с ним действии. Delphi поддерживает механизмы создания и отображения таких ярлычков в создаваемых программах.

Технология разработки программы в Delphi для широкого применения включает этапы:

Спецификация (определение, формулирование требований к программе).

Разработка алгоритма.

Кодирование (запись алгоритма на языке программирования).

Тестирование.

Создание справочной системы.

Создание установочного диска (CD-ROM).

В процессе построения приложения разработчик выбирает из палитры компонент готовые компоненты. Еще до компиляции он видит результаты своей работы - после подключения к источнику данных их можно видеть отображенными на форме, можно перемещаться по данным, представлять их в том или ином виде. Пользователь также может присоединить к библиотеке свои собственные компоненты, которые он разрабатывает в среде Delphi.

Рабочий экран Delphi (версия Delphi-6) имеет 4 основных окна: главное окно Delphi; окно формы Form1; окно инспектора объектов Object Inspector и окно редактора кода Unit1. pas

Особенности СУБД MySQL

MySQL - свободная система управления базами данных (СУБД). MySQL является собственностью компании Oracle Corporation, получившей её вместе с поглощённой Sun Microsystems, осуществляющей разработку и поддержку приложения. Распространяется под GNU General Public License или под собственной коммерческой лицензией. Помимо этого разработчики создают функциональность по заказу лицензионных пользователей, именно благодаря такому заказу почти в самых ранних версиях появился механизм репликации.

MySQL является решением для малых и средних приложений. Входит в состав серверов WAMP, AppServ, LAMP и в портативные сборки серверов Денвер, XAMPP. Обычно MySQL используется в качестве сервера, к которому обращаются локальные или удалённые клиенты, однако в дистрибутив входит библиотека внутреннего сервера, позволяющая включать MySQL в автономные программы.

Гибкость СУБД MySQL обеспечивается поддержкой большого количества типов таблиц: пользователи могут выбрать как таблицы типа MyISAM, поддерживающие полнотекстовый поиск, так и таблицы InnoDB, поддерживающие транзакции на уровне отдельных записей. Более того, СУБД MySQL поставляется со специальным типом таблиц EXAMPLE, демонстрирующим принципы создания новых типов таблиц.

Благодаря открытой архитектуре и GPL-лицензированию, в СУБД MySQL постоянно появляются новые типы таблиц.

Выбранное мной программное обеспечение отличается простотой и удобством, а так же, в нём есть все компоненты, которые мне понадобятся при разрабоки собственной программы, поэтому, свой выбор я остановила именно на данных средах разработки.

Визуальная среда программирования Delphi . Среда программирования Delphi состоит из множества визуальных и невизуальных стандартных компонент, которые позволяют существенно ускорит процесс разработки программ. Будем рассматривать одну из самых популярных версий Delphi 7. Рабочее окно программы состоит из пяти вспомогательных окон (рис.3.1.): главное окно (1), окно списка модулей (2), окно кода программы (3), окно формы проекта (4), инспектор объектов (5), окно списка объектов (6).

Рис. 3.1. Рабочее окно Delphi7.

Главное окно состоит из строки меню, панели инструментов и палитры компонентов. Палитра компонентов состоит из 14 страниц (Standard, Additional, Win32, System и др.). Для перемещения компонента на форму необходимо сначала щелкнуть по компоненту, а потом по форме.

Окно списка модулей содержит список всех подключенных к программе модулей.

В окне кода программы непосредственно пишется программы на языке Object Pascal. По умолчанию окно кода содержит текст пустой программы, отвечающей всех требованиям программы в Delphi.

Окно формы – это Windows-окно создаваемой программы: меню, размеры окна, заголовки, рамки и любые стандартные компоненты. При работе созданной программы пользователь видит только форму.

Инспектор объектов содержит две страницы: Properties (свойства) и Events (события). На странице свойств отражаются все характеристики выбранного объекта. На странице событий отображаются все возможные действия с объектом.

Окно списка объектов содержит список всех размещенных на форме компонентов.

Структура программы в среде Delphi . Программа на любом языке программирования имеет стандартную структуру: <заголовок программы> <тело программы>. Заголовок программы в среде Delphi содержит имя модуля основной программы и область определения всех стандартных и нестандартных программ-модулей, которые используется средой для организации исполнения программы. Рассмотрим разделы шаблона программы в среде.

Заголовок всегда начинается со слова unit . Стандартное имя программы Unit1. Для изменения имени программы достаточно сохранить программу под новым именем.

Раздел interface начинается с перечисления в предложении uses стандартных модулей. Например, модуль SysUtils разработан для использования в языке всех стандартных функций. Среда Delphi автоматически вставляет в шаблон разрабатываемой программы список необходимых модулей. Но есть модули, которые необходимо пользователю вписать вручную. Далее в разделе interface под заголовком type объявляются все создаваемые в программе типе данных. Здесь под заголовком private объявляются переменные, доступные только в этом модуле, а под заголовком public – доступные во всех модулях программы. Шаблон пустой программы в среде Delphi представлен на рисунке 3.2.

Рис. 3.2. Шаблон пустой программы в Delphi7

Объявление типов заканчивается тогда, когда появляется в программе заголовок следующего раздела. В приведенном примере это ключевое слово var. В этом разделе будут объявлены все переменные по определенным в программе типам данных. В приведенном шаблоне есть только одна переменная Form1, которая является объектом объявленного класса TForm1. Со строки unit до слова implementation находится заголовок программы. После этого слова располагаются описания всех действий в программе. Первое обязательное действие – это директива $R, обеспечивающая объединение модуля формы и модуля программы в один проект – программу. Конец текста программы-модуля определяется словом end с точкой.

Среда Delphi создает программу из нескольких файлов, которые обеспечивают настройку проекта на среду, установку параметров компилятора и другие файлы. Самый большой по размеру файл – это файл с расширением exe, который и является готовой программой. Рабочими файлами являются файлы с расширениями dpr и pas. В файле с расширением cfg обеспечивается настройка опций проекта. Файл с расширением dof обеспечивает установку параметров компилятора. Файл с расширением res определяется как файл ресурсов. Он содержит и стандартную иконку проекта, которую разработчик может заменить. Файл с расширением dcu – это оттранслированный файл модуля. Если модулей несколько, то они будут объединены в единый проект. Файл с расширением dfm содержит характеристики всех стандартных компонент формы.

Типы данных в Delphi 7 . Каждый вариант данных при разработке программы должен быть отнесен к какому-то конкретному типу данных. Для каждого типа есть свой специфический набор операций. Работать с данными определенного типа можно только создания переменных этого типа. Тип данных определяет формат значений, который может принимать переменная этого типа. Типы данных принято разделять на простые, структурированные, динамические, строковые и процедурные. К простым типам относятся вещественные, тип дата-время, целые, логические, символьные, перечислимые. К структурированным типам относятся массивы, записи, множества, файлы, классы.

Для записи целых чисел используются те же (плюс добавляются некоторые свои) типы данных, что и на языке Turbo Pascal 7.0., но только с другими диапазонами значений (табл. 3.29.).

Целый тип данных

Диапазон значений

Размер в байтах

2147483648…2147483647

Соответствует типу integer

2 63 …2 63 – 1

Соответсвует типу cardinal

Таблица 3.29. Целые типы данных в Delphi7.

Часто при создании программ необходимо перевести число в строку или наоборот. Для этого существуют функции: StrToInt(s) и IntToStr(x), первая из которых переводит строку s в число, вторая – число х в строку.

Вещественные (действительные) числа характеризуются наличием десятичной запятой в записи числа. Запись таких чисел обеспечивается с некоторой точностью, определяющей количество разрядов в экспоненциальной записи числа. В Delphi 7 используются 6 вещественных типов (таблица 3.30.).

Вещественный

тип данных

Максимальное значение

Количество цифр

Размер в байтах

9223337203685477.5807

Таблица 3.30. Вещественные типы данных в Delphi7.

Наибольшая производительность обеспеченна для типа real. Для переводов вещественного числа в строку и наоборот существуют функции StrToFloat(s) и FloatToStr(x).

Логический тип данных так же как и в Turbo Pascal 7.0. содержит две переменные: true (истина) и false (ложь). Использование логических переменных позволяет существенно улучшит алгоритм решения задач за счет контроля некоторых особых вариантов решения задачи.

Строковый (string) и символьный (char) типы данных в Delphi 7 аналогичны этим же типам в Turbo Pascal 7.0. Существуют еще 3 строковых типа данных (Shortstring,Ansistring,Widestring), которые отличаются длинной и используются, как правило, для совместимости с другими версиями.

Тип дата-время (TDateTime) введен для удобства пользователя. При этом дата и время могут быть записаны в нескольких формах.

Константы и массивы записываются аналогично записи в Turbo Pascal 7.0.

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

Вопросы для размышления:

1. На каком языке пишутся программы в среде Delphi 7?

2. Из каких частей состоит рабочее окно программы Delphi 7?

3. Из скольких файлов создается программа в Delphi 7?

4. Какие существуют типы данных в Delphi 7?

5. Чем могут отличаться одноименные типы данных в Turbo Pascal 7.0. и Delphi 7?

Разработка программного обеспечения для ОС Windows и иных популярных может осуществляться посредством самых разных типов инструментов. В числе тех, что характеризуются большой популярностью в среде российских и зарубежных программистов, — программа Delphi. Какова специфика данного инструмента разработки? Каковы наиболее примечательные его возможности?

Общие сведения о Delphi

Delphi — среда разработки прикладных программ, которые предназначены для запуска в ОС Windows, MacOS, а также в мобильных операционных системах — iOS и Android. Характеризуется простотой языка и процедур генерации кода.

При необходимости обеспечивает низкоуровневую коммуникацию с ОС и библиотеками, составленными на языках C и C++. Программы, которые создаются с помощью Delphi, не требуют сторонних оболочек для запуска — таких как, например, Java Virtual Machine. Delphi — среда разработки, которая может успешно применяться как профессионалами, так и в учебных целях. Для того чтобы освоить базовые ее возможности, необязательно обладать высокой квалификацией и знанием сложных языков программирования.

Основные преимущества

Изучим то, каковы ключевые преимущества программного продукта, о котором идет речь. Когда в той или иной IT-компании осуществляется обоснование выбора среды разработки, Delphi становится выбором многих программистов и рекомендуется ими к использованию. Это связано с тем, что данная среда позволяет создавать приложения в самые оперативные сроки, обеспечивать их высокую производительность даже на тех компьютерах, которые имеют скромные аппаратные характеристики. Значимый аргумент в пользу выбора рассматриваемой среды разработки — ее можно дополнять за счет новых инструментов, не предусмотренных стандартным набором решений, присутствующим в интерфейсе Delphi.

Изучим теперь то, каковы нюансы практического пользования возможностями Delphi.

Специфика интерфейса

Прежде всего можно обратить внимание на некоторые особенности интерфейса рассматриваемой среды разработки ПО. Так, структура рабочего пространства программы предполагает одновременную работу с несколькими основными окнами. Рассмотрим данное свойство подробнее.

Среда разработки Delphi, 7 версии в частности, предполагает задействование следующих ключевых модулей: дизайнера форм, редактора, палитры, инспектора объектов, а также справочника. В некоторых модификациях Delphi отмеченные компоненты могут именоваться иначе. Например, редактору может соответствовать окно кода программы, дизайнеру — окно формы. Однако функциональное назначение их будет тем же самым. Отмеченные Delphi могут дополнять различные вспомогательные инструменты. Основными с точки зрения процедур разработки программ считаются первые два. Но важны также и остальные. Рассмотрим особенности пользования отмеченными модулями Delphi.

Дизайнер форм, редактор и палитра

С помощью дизайнера форм разработчик создает интерфейс своей программы. В свою очередь, в редакторе пишется ее код. Многие программисты, которые рекомендуют сделать выбор среды разработки Delphi как самого оптимального решения, в качестве аргумента приводят простоту пользования дизайнером форм. Некоторые специалисты считают, что этот процесс и вовсе больше похож на игру.

Как только пользователь начинает создавать программу и запускает дизайнер форм, то изначально в нем нет никаких элементов, он пустой. Но его тут же можно заполнить с помощью инструментов, расположенных на другом модуле Delphi — палитре. Элементы интерфейса программы, которые настраиваются в дизайнере форм, должны управляться командами, которые, в свою очередь, пишутся в редакторе.

Но вернемся пока что к палитре. С помощью нее можно размещать в области дизайнера форм нужные объекты. Для того чтобы использовать тот или иной инструмент, следует щелкнуть один раз на нем — пока он в области палитры, второй раз — в окне дизайнера форм. После этого соответствующий объект переместится в область разработки, и для него можно прописывать код в редакторе.

Инспектор объектов

Другой значимый элемент, который содержит Delphi — среда разработки приложений для ОС Windows и иных распространенных платформ — инспектор объектов. Можно отметить, что информация, отображаемая в нем, меняется: на это влияет статус объекта, который выбран в области дизайнера форм.

Структура инспектора объектов такова. Он состоит из двух окон. На каждом фиксируются алгоритмы, определяющие поведение соответствующих компонентов. В первом отображаются свойства, во втором — события. Если программист желает внести корректировки в алгоритмы, влияющие на конкретный компонент, то задействуются возможности инспектора объектов. Так, например, можно менять позиционирование тех или иных элементов интерфейса программ, их высоту и ширину.

В инспекторе объектов есть закладки, с помощью которых можно переключаться между страницами, отражающими свойства или события, которые непосредственно связаны с редактором. Так, если два раза щелкнуть на правой части какого-либо из отображаемых на экране пунктов, то код, который соответствует тому или иному событию, зафиксируется в редакторе.

Разработка программного обеспечения в Delphi предполагает использование инспектора объектов для решения самых разных задач. Это предопределяется тем, что с помощью данного инструмента можно изменять свойства фактически любых объектов, расположенных на форме, а также ее самой. Изучим подробнее некоторые особенности работы с инспектором объектов.

Инспектор объектов: использование возможностей

Для того чтобы понять, как функционирует интегрированная среда разработки Delphi в части взаимодействия инспектора объектов и форм, можно попробовать внести изменения в свойства некоторых распространенных элементов интерфейса ПО в Windows — например, Memo, Button и Listbox (чуть позже мы исследуем их сущность подробнее). Для начала их нужно разместить на форме, используя доступные средства Delphi.

Можно попробовать поэкспериментировать со свойством Ctl3D. Для этого нужно щелкнуть мышкой на форме, после чего перейти в инспектор объектов и изменить значение рассматриваемого свойства. После этого форма значительно изменит Одновременно свойство Ctl3D будет изменено на каждом из элементов, что размещены в окне разработки.

После произведенных экспериментов мы можем вновь перейти на форму и активизировать значение Ctl3D. После этого обратимся к элементам Memo и Listbox. Теперь можно изменять их свойства, расположение на форме, внешний вид. Например, выбрав в пункте меню опцию Edit, а затем — Size, программист может изменить ширину и высоту объектов. Есть вариант расположить их по центру, выбрав Edit и Align. Соответствующие действия повлияют на элементы, отображаемые в инспекторе объектов.

С помощью рассматриваемого модуля Delphi можно осуществлять изменение свойств компонентов. Так, например, если стоит задача определить для них конкретный цвет, то есть варианты задействования сразу нескольких инструментов. Во-первых, можно ввести команду, соответствующую цвету - например, красному - clRed, - в область Во-вторых, пользователь может выбрать нужный цвет из списка. В-третьих, есть вариант два раза щелкнуть мышью на свойствах Color — появится окно выбра цвета. Аналогично разработчик может менять и иные атрибуты объектов — к примеру, тип шрифта, его цвет или размер.

Справочник

Delphi — среда разработки, которая дополнена достаточно подробной справочной системой. Для того чтобы обратиться к ней, следует выбрать в меню пункт Help. После этого в окне отобразится один из отмеченных нами выше программных модулей рассматриваемой среды разработки — справочник. Особенность пользования им в том, что при нажатии F1 пользователь получит конкретную подсказку, отражающую специфику задействования текущего инструмента. Например, если программист работает с инспектором объектов, то он может выбрать одно из свойств, после чего нажать на F1 и получить справочную информацию о соответствующей опции. То же самое можно делать при работе с любым другим элементом интерфейса, который включает в себя среда разработки Delphi 7 и иные версии соответствующего типа ПО.

Прочие элементы интерфейса

В числе иных значимых компонентов интерфейса рассматриваемого программного решения — меню, панель быстрого доступа, а также редактор изображений. Касательно меню — оно позволяет программисту получать быстрый доступ к нужным компонентам, присутствующим в структуре среды разработки. Пользоваться им можно как с помощью мыши, так и при задействовании горячих клавиш. Чуть ниже меню располагается панель быстрого доступа. Некоторые из ее функций дублируют те, что характерны для меню, но доступ к ним осуществляется быстрее. Delphi в чем-то похож на программу Paint в Windows. То есть с помощью него можно производить простейшие корректировки картинок, наносить на них надписи и иные элементы.

Средства программирования

Delphi — среда разработки, которая включает большое количество инструментов, призванных повысить эффективность работы программиста. Так, рассмотренные нами выше ключевые модули дополняются набором из специальных инструментов. В числе таковых: отладчик, компилятор, а также компоненты WinSight и WinSpector. Отметим, что в некоторых версиях Delphi отмеченные элементы нужно инсталлировать отдельно. Изучим их специфику.

Отладчик Delphi

Касательно отладчика — данный инструмент дополняет редактор кода в части проведения необходимой проверки соответствующих программных алгоритмов на предмет корректности. С помощью него разработчик может фактически построчно исследовать свой исходник. В некоторых случаях при решении такой задачи, как разработка компонентов, Delphi как самостоятельный продукт может быть дополнен внешним отладчиком, который дает программисту расширенные возможности проверки кода создаваемого ПО.

Компилятор Delphi

Изучим теперь специфику компилятора рассматриваемой среды разработки. Отметим, что в структуре Delphi может присутствовать несколько соответствующих элементов. Так, есть вариант задействовать компилятор DCC, который полезен в тех случаях, когда стоит задача по работе с приложением во внешнем отладчике.

Winsight и WinSpector

Указанные модули относятся к тем, что нужно устанавливать на Delphi дополнительно. Характеризуются относительной сложностью в освоении. Однако многие программисты, осуществившие выбор среды разработки Delphi, считают, что данными компонентами обязательно нужно учиться пользоваться. Так, модуль Winsight используется с целью наблюдения за сообщениями Windows. Такой компонент, как WinSpector, нужен для того, чтобы фиксировать состояние компьютера в специальном файле. Если в ходе разработки ПО будут наблюдаться какие-либо сбои, то всегда можно открыть этот файл и посмотреть, что могло быть причиной неполадки.

Стандартные компоненты

Среда разработки Delphi, общие сведения о которой мы изучаем, включает ряд стандартных компонентов, о которых также полезно знать. Специалисты относят к таковым следующие: MainMenu, PopupMenu, Label, Edit, Memo, Button, Checkbox, Radiobutton, Listbox, Combobox, Scrollbar, Groupbox, Panel, а также Scrollbox. Изучим их специфику подробнее.

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

Компонент PopupMenu предназначен для размещения всплывающих меню в интерфейсе создаваемой программы, то есть открывающихся с помощью щелчка правой кнопкой мыши.

Компонент Label задействуется с целью отображения текста в окне программы. Его можно настраивать, например задавать нужный шрифт в инспекторе объектов.

Компонент Edit задействуется с целью отображения на экране фрагмента текста, который пользователь может редактировать в то время, как программа работает. Его дополняет компонент Memo, с помощью которого, в свою очередь, можно работать с текстами большего объема. Данный элемент включает, например, такие опции, как копирование текста.

Компонент Button предназначен для выполнения тех или иных действий посредством нажатия кнопки в то время, как программа работает. Необходимо разместить соответствующий элемент на форме, после чего вписать нужный программный код.

Компонент Checkbox позволяет отображать на экране строки с небольшим окошком, в котором может ставиться галочка с помощью мыши. Похожий элемент — Radiobutton. Различаются они, во-первых, внешним видом — второй компонент выполняется в виде кружка, а во-вторых, первый элемент разрешает одновременный выбор нескольких опций, Radiobutton — только одной.

Компонент Listbox используется для отображения на экране списка, который пользователь может прокручивать с помощью мыши. Чем-то похож на него другой элемент — Combobox, однако он дополняется возможностью вводить текст в специальном поле.

Компонент Scrollbar — это полоса прокрутки в окнах. Как правило, появляется автоматически, как только текстовое пространство или форма с объектами становятся больше, чем окно.

Компонент Groupbox задействуется для того, чтобы фиксировать порядок перемещения между окнами при нажатии клавиши TAB. Может дополняться элементом Panel, с помощью которого может осуществляться перемещение нескольких объектов на форме.

Компонент Scrollbox позволяет зафиксировать на форме область, которую можно прокручивать как горизонтально, так и вертикально. Данным свойством характеризуются основные окна разработки Delphi по умолчанию. Но если есть необходимость в задействовании подобной опции на конкретном участке формы, можно воспользоваться компонентом Scrollbox.

Резюме

Delphi — среда разработки приложений с большими возможностями, в то же время характеризующаяся простотой использования основных функций. С помощью инструментов, которые входят в ее структуру, можно создавать самые разные типы программ для Windows и иных популярных ОС.

Выбор средств разработки Delphi многие программисты обуславливают удобством пользования интерфейсами соответствующего ПО, а также широким набором инструментов, полезных для работы на любом участке создания программы — на этапе дизайна, программирования алгоритмов или отладки.

1. Знакомство со средой программирования Delphi

1.1 Структура среды программирования

Delphi – система быстрой разработки приложений для операционной системы Windows. Концепция Delphi была реализована в конце 1994 г., когда вышла первая версия среды разработки. В основу этого программного продукта легли концепции объектно-ориентированного программирования и визуального подхода к построению интерфейса приложения. На сегодняшний момент вышла седьмая версия среды. От версии к версии разработчики улучшают средства для разработки приложений.

Delphi это комбинация нескольких важнейших технологий:

o Высокопроизводительный компилятор в машинный код

o Объектно-ориентированная модель компонентов

o Визуальное построение приложений из программных прототипов

o Масштабируемые средства для построения баз данных

Приложение для Windows – это специальный тип программы, которая:

Ø Имеет специальный формат исполняемого файла (*.exe)

Ø Работает только с Windows

Ø Обычно работает в прямоугольном окне на экране

Ø Может работать одновременно с другими программами для Windows, включая другие экземпляры этого же приложения

Ø DIV_ADBLOCK441">


Ниже перечислены основные составные части Delphi:

1. Главное окно

2. Дизайнер Форм (Form Designer)

3. Окно Редактора Исходного Текста (Editor Window)

4. Палитра Компонент (Component Palette)

5. Инспектор Объектов (Object Inspector)

6. Справочник (On-line help)

Есть, конечно, и другие важные составляющие Delphi, вроде линейки инструментов, системного меню и многие другие, нужные для точной настройки программы и среды программирования. Рассмотрим функции каждого составляющего.

Главное окно управляет процессом разработки приложения. Оно управляют файлами, включаемых в приложение и выполняет всю работу, связанную с их сопровождением, компиляцию и отладкой. Главное окно имеет

§ Главное меню (MenuBar), располагается непосредственно под строкой заголовка главного окна и позволяет получить доступ ко всем функциях среды разработки.

§ Панель инструментов (SpeedBar) предоставляет быстрый доступ к большинству команд главного меню. Располагается под главным меню.

§ Палитра компонентов (Component Palette) предоставляет доступ к визуальным компонентов, которые можно помещать на форму.

Программисты на Delphi проводят большую часть времени, переключаясь между Дизайнером Форм и Окном Редактора Исходного Текста (которое для краткости называют Редактор).

Дизайнер Форм в Delphi столь интуитивно понятен и прост в использовании, что создание визуального интерфейса превращается в детскую игру. Окно формы представляет собой проект Windows-окна будущей программы. Вначале это окно пусто. Точнее, оно содержит стандартные для Windows интерфейсные элементы – кнопки вызова системного меню, максимизации, минимизации и закрытия окна, полосу заголовка и очерчивающую рамку. Вся рабочая область окна обычно заполнена точками координатной сетки, служащей для упорядочения размещаемых на форме компонентов (вы можете убрать эти точки, вызвав с помощью меню Tools | Environment options соответствующее окно настроек и убрав флажок в переключателе Display Grid на окне, связанном с закладкой Preferences). Значительную часть времени программист занят увлекательным занятием, напоминающим работу с набором деталей конструктора Lego: он “достает” из палитры компонентов, как из коробки с деталями, нужный компонент и размещает его на “наборном поле” окна формы, постепенно заполняя форму интерфейсными элементами. Собственно, именно в этом процессе наполнения формы и заключается главная изюминка визуального программирования. Программист в любой момент времени контролирует содержание окна создаваемой программы и может внести в него необходимые изменения. Несмотря на всю важность Дизайнера Форм , местом, где программисты проводят основное время является Редактор . Логика является движущей силой программы и Редактор – то место, где Вы ее “кодируете”.

Палитра компонентов - это главное богатство Delphi. Она занимает правую часть главного окна и имеет закладки, обеспечивающие быстрый поиск нужного компонента. Под компонентом понимается некий функциональный элемент, содержащий определенные свойства и размещаемый программистом в окне формы. С помощью компонентов создается каркас программы, во всяком случае - ее видимые на экране внешние проявления: окна, кнопки, списки выбора и т. д. Палитра Компонент позволяет Вам выбрать нужные объекты для размещения их на Дизайнере Форм. Для использования Палитры Компонент просто первый раз щелкните мышкой на один из объектов и потом второй раз - на Дизайнере Форм . Выбранный Вами объект появится на проектируемом окне и им можно манипулировать с помощью мыши. Палитра Компонент использует постраничную группировку объектов. Внизу Палитры находится набор закладок - Standard, Additional, Dialogs и т. д. Если Вы щелкнете мышью на одну из закладок, то Вы можете перейти на следующую страницу Палитры Компонент . Принцип разбиения на страницы широко используется в среде программирования Delphi и его легко можно использовать в своей программе.

Слева от Дизайнера Форм Вы можете видеть Инспектор Объектов . Любой размещаемый на форме компонент характеризуется некоторым набором параметров: положением, размером, цветом и т. д. Часть этих параметров, например, положение и размеры компонента, программист может изменять, манипулируя с компонентом в окне формы. Для изменения других параметров предназначено окно Инспектора объектов. Это окно содержит две страницы – Properties (Свойства) и Events (События). Страница properties служит для установки нужных свойств компонента, страница Events позволяет определить реакцию компонента на то или иное событие. Совокупность cвойств отображает видимую сторону компонента: положение относительно левого верхнего угла рабочей области формы, его размеры и цвет, шрифт и текст надписи на нем и т. п.; совокупность событий - его поведенческую сторону: будет ли компонент реагировать на щелчок мыши или на нажатие клавиш, как он будет вести себя в момент появления на экране или в момент изменения размеров окна и т. п. Каждая страница окна Инспектора объектов представляет собой двухколончатую таблицу, левая колонка которой содержит название свойства или события, а правая – конкретное значение свойства или имя подпрограммы [Если вам еще не знаком этот термин, считайте, что подпрограмма – это просто относительно небольшой фрагмент программы.], обрабатывающей соответствующее событие. В верхней части окна Инспектора объектов располагается раскрывающийся список всех помещенных на форму компонентов. Поскольку форма сама по себе является компонентом, ее имя также присутствует в этом списке.


Страница событий связана с Редактором ; если Вы дважды щелкнете мышкой на правую сторону какого-нибудь пункта, то соответствующий данному событию код автоматически запишется в Редактор , сам Редактор немедленно получит фокус, и Вы сразу же имеете возможность добавить код обработчика данного события. Окно кода предназначено для создания и редактирования текста программы. Этот текст составляется по специальным правилам и описывает алгоритм работы программы. Совокупность правил записи текста называется языком программирования. В системе Delphi используется язык программирования Object Pascal, который представляет собой расширенную и усовершенствованную версию широко распространенного языка Паскаль, впервые предложенного швейцарским ученым Н. Виртом еще в 1970 г. и усовершенствованного сотрудниками корпорации Borland (созданные ими языки назывались Turbo Pascal, Borland Pascal и Object Pascal). Первоначально окно кода содержит минимальный исходный текст, обеспечивающий нормальное функционирование пустой формы в качестве полноценного Windows-окна. В ходе работы над проектом программист вносит в него необходимые дополнения, чтобы придать программе нужную функциональность. Поскольку для создания даже простых программ вам понадобится создавать и изменять (редактировать) код программы, ниже описываются основные приемы работы с окном кода. Сразу после открытия нового проекта в нем будут минимально необходимые строки кода для описния формы.

Последняя важная часть среды Delphi – Справочник (on-line help) . Для доступа к этому инструменту нужно просто выбрать в системном меню пункт Help и затем Contents. На экране появится Справочник . Справочник является контекстно-зависимым; при нажатии клавиши F1, Вы получите подсказку, соответствующую текущей ситуации. Например, находясь в Инспекторе Объектов, выберите какое-нибудь свойство и нажмите F1 - Вы получите справку о назначении данного свойства. Если в любой момент работы в среде Delphi возникает неясность или затруднение - жмите F1 и необходимая информация появится на экране.

1.2 Проект Delphi

Основная программа, которая использует написанные программистом модули, называется проектом . Проект может включать формы, модули, установки параметров проекта, ресурсы, графическую информацию и т. д. Вся эта информация хранится в различных файлах, которые используются в головной программе, т. е. в проекте.

Любой проект имеет, по-крайней мере шесть файлов, связанных с ним. Три из них относятся к управлению проектом из среды и напрямую программистом не меняются. Ниже приводится список файлов, которые обязательно содержатся в проекте.

· Главный файл проекта, изначально называется PROJECT1.DPR.

· Первый модуль программы (unit), который автоматически появляется в начале работы. Файл называется UNIT1.PAS по умолчанию, но его можно назвать любым другим именем, вроде MAIN. PAS.

· Файл главной формы, который по умолчанию называется UNIT1.DFM, используется для сохранения информации о внешнем виде главной формы.

· Файл PROJECT1.RES содержит иконку для проекта, создается автоматически.

· Файл, который называется PROJECT1.DFO по умолчанию, является текстовым файлом для сохранения установок, связанных с данным проектом. Например, установленные разработчиком директивы компилятора сохраняются здесь.

· Файл PROJECT1.CFG содержит информацию о состоянии рабочего пространства.

Разумеется, если сохранить проект под другим именем, то изменят название и файлы с расширением RES, DFO и CFG. Кроме того, в проекте сохраняются файлы резервных копий (т. е. файлы с расширениями *.~df, *.~dp, *.~pa). Поскольку проект содержит множество файлов, то рекомендуется для каждого проекта создавать отдельную директорию. Все манипуляции с файлами (сохранение, переименование, редактирование и т. д.) рекомендуется производить только в среде разработки.

После компиляции программы получаются файлы с расширениями: DCU – скомпилированные модули EXE – исполняемый файл

1.3 Главное меню среды

Пункт меню “File”

New предлагает выбрать тип нового приложения

New Application начинает новый проект для оконного приложения

New Form создает новую форму и модуль, связанный с ней

Open открывает при необходимости любой модуль или просто текстовый файл. Если модуль описывает форму, то эта форма тоже появится на экране.

Open Project открывает существующий проект.

Reopen открывает ранее открывавшийся проект

Save сохраняет только редактируемый файл, но не весь проект.

Save As сохраняет редактируемый файл под другим именем.

Save Project As сохраняет проект

Close удаляет текущий файл из окна Редактора.

Close All закрывает все файлы проекта

Рисунок 2

Пункт меню “Edit”

“Edit” содержит команды Undo и Redo , которые могут быть очень полезны при работе в редакторе для устранения последствий при неправильных действиях, например, если случайно удален нужный фрагмент текста.

Команды Cut, Copy, Paste и Delete - как во всех остальных приложениях Windows, но их можно применять не только к тексту, но и к визуальным компонентам. Bring To Front , Send To Back , Align и Size используются для выравнивания и управления внешним видом компонентов на форме.

Пункт меню “ View

Project manager позволяет видеть содержимое проекта.

Object Inspector показывает окно Инспектора объектов.

Пункт меню “Project”

Add to Project позволяет добавлять форму в проект.

Remove from Project удаляет форму из проекта.

View Source показывает содержимое файла проекта.

Syntax Check только проверяет правильность кода программы, но не обновляет DCU файлы.

Пункт меню “Run”

Run F 9 компилирует и запускает приложение на исполнение

Program Reset снимает с выполнения приложение.

1.4 Первое приложение на Delphi

Рассмотрим процесс построения простейшего приложения, которое работает следующим образом. При нажатии кнопки появляется сообщение «Здравствуй, мир!».

Порядок действий:

1. Запустите Delphi . (Пуск/ Программы/ Borland Delphi 5 ) При этом автоматически открывается новый проект для оконного приложения с одной главной формой и модулем, соответствующим этой форме.

2. Выберите в Палитре компонентов закладку Standard . и перенесите с Палитры компонентов на форму компонент и TButton . Для этого поочередно подводите курсор мыши к компонентам, читая подсказки, до тех пор, пока не появится TButton . Выберете его, нажав левую кнопку мыши, а затем переместите указатель на форму и нажмите еще раз на кнопку мыши. Помещенный на форму компонент будет иметь имя Button 1 . При этом текст модуля будет иметь вид

Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs;

TForm1 = class(TForm)

Button1: TButton;

{ Private declarations }

{ Public declarations }

3. Для того, чтобы при нажатии на кнопку происходили какие-либо действия нужно написать обработчик события Button 1 Click . Для этого выберите на форме Button 1 и щелкните на него дважды. Вы окажетесь в окне редактирования.

4. Приведите обработчик события нажатия кнопки к следующему виду:

procedure TForm1.Button1Click(Sender: TObject);

ShowMessage(‘ Здравствуй , мир !");

end ;

5. Сохраните Приложение, выбрав пункт в главном меню File -> Save All . Название проекта и название программного модуля не должно совпадать! Рекомендуется создать отдельную директорию для файлов проекта.

6. Запустите на выполнение ваше Приложение. Для этого выберете в главном меню пункт Run-> Run , или нажмите клавишу F 9 .

Unit1.pas" {Form1};

Application. Initialize;

Application. CreateForm(TForm1, Form1);

С каждым проектом связан глобальный объект Application, который инкапсулирует свойства и методы приложения для Windows. В файле проекта, который среда генерирует автоматически, вызываются методы этого объекта: инициализация, создание формы, функционирование приложения.

1.5 Контрольные вопросы

1. Назовите основные составляющие среды DELPHI и их назначение.

2. Назовите состав и назначение пунктов главного меню системы.

3. Каково назначение Инспектора объектов?

4. Из каких основных файлов состоит проект приложения?

5. Как производится размещение, перемещение, изменение размеров компонентов на форме?

6. Как запустить приложение на выполнение из среды DELPHI?

2. Библиотека визуальных компонентов (VCL)

2.1 Иерархия базовых классов VCL

Библиотека визуальных компонентов включает множество классов, которые можно использовать при разработке приложений. VCL тесно связана со средой разработки (все визуальные компоненты расположены на Палитре компонентов) и позволяет быстро создавать интерфейс приложения. Множество классов, входящих в библиотеку визуальных компонентов, организовано в виде иерархии. На самом верхнем уровне иерархии находится класс TObject, который является предком для любого класса. От него каждый класс получает в наследство механизмы создания и уничтожения экземпляра класса. Все классы библиотеки визуальных компонентов произошли от группы базовых классов, которые лежат в основе иерархии.

Класс TComponent является важнейшим классом, поскольку является предком для визуальных компонентов. Он наделен взаимодействием компонента со средой разработки, с Палитрой компонентов и Инспектором Объектов. Благодаря этим возможностям компоненты начинают работают уже во время разработки интерфейса приложения. Визуальные компоненты можно разбить на две группы: видимые и невидимые. Видимые компоненты видны не только во время дизайна интерфейса, но и во время работы приложения. Невидимые компоненты не видны во время работы программы, они осуществляют взаимодействие с ресурсами либо с другими компонентами. Непосредственно от класса TComponent можно порождать невидимые визуальные компоненты.

Класс TControl является прямым предком для видимых визуальных компонентов и имеет соответствующие свойства и метода, отвечающие за внешний вид компонентов. Видимые компоненты, которые имеют фокус ввода, т. е. имеют возможность получать и обрабатывать сообщения Windows (например, от клавиатуры), порождаются от класса TWinControl.

2.2 Типы свойств компонентов. Изменение свойств

Каждый компонент имеет свой набор характеристик или свойств . Для пользователя (программиста) свойство выглядит как простое поле какой-либо структуры, содержащее некоторое значение. Однако в отличие от “просто” поля, любое изменение значения некоторого свойства компонента сразу же приводит к изменению визуального представления этого компонента, поскольку свойство инкапсулирует в себе методы (действия), связанные с чтением и записью этого поля (которые, в свою очередь, включают в себя необходимую перерисовку). Каждый компонент, который помещается на форму, имеет свое отражение в окне Инспектора Объектов (Object Inspector). Инспектор Объектов имеет две “странички” - “Properties” (Свойства) и “Events” (События), где можно изменять характеристики компонента.

Существует несколько типов свойств, в зависимости от их “природы”, т. е. внутреннего устройства.

o Простые свойства - это те, значения которых являются числами или строками. Например, свойства Left и Top принимают целые значения, определяющие положение левого верхнего угла компонента или формы. Свойства Caption и Name представляют собой строки и определяют заголовок и имя компонента или формы.

o Перечислимые свойства - это те, которые могут принимать значения из предопределенного набора (списка). Простейший пример - это свойство типа Boolean , которое может принимать значения True или False .

o Вложенные свойства - это те, которые поддерживают вложенные значения (или объекты). Object Inspector изображает знак “+” слева от названия таких свойств. Некоторые свойства, например, Font, для изменения своих значений имеют возможность вызвать диалоговое окно. Для этого достаточно щелкнуть маленькую кнопку с тремя точками в правой части строки Инспектора Объектов, показывающей данное свойство.

Delphi позволяет легко манипулировать свойствами компонент как в режиме проектирования (design time), так и в режиме выполнения программы (run time). В режиме проектирования манипулирование свойствами осуществляется с помощью Дизайнера Форм (Forms Designer) илина страничке “Properties” Инспектора Объектов. Например, для того чтобы изменить свойства Height (высоту) и Width (ширину) кнопки, достаточно “зацепить” мышкой за любой ее угол и раздвинуть до нужного представления. Того же результата можно добиться, просто подставив новые значения свойств Height и Width в окне Object Inspector.

С другой стороны, в режиме выполнения пользователь (программист) имеет возможность не только манипулировать всеми свойствами, отображаемыми в Инспекторе Объектов, но и управлять более обширным их списком, в том числе и свойствами других классов, которые не являются визуальными компонентами и, следовательно, не отображаются в Инспекторе объектов.

Все изменения значений свойств компонент в режиме выполнения должны осуществляться путем прямой записи строк кода на языке Паскаль. В режиме выполнения невозможно использовать Object Inspector. Однако, доступ к свойствам компонентов довольно легко получить программным путем. Все, что необходимо сделать для изменения какого-либо свойства – это написать простую строчку кода аналогично следующей:

MyComponent. Width:= 35;

Вышеприведенная строка устанавливает ширину (Width) компонента в значение 35. Если свойство Width компонента еще не было равно 35 к моменту выполнения данной строки программы, можно увидеть как компонент визуально изменит свою ширину.

Таким образом, нет ничего магического в Инспекторе Объектов. Object Inspector просто является удобным способом выполнения в режиме проектирования того, что может быть осуществлено программным путем в режиме выполнения. Более того, как уже было сказано выше, у компонента могут быть свойства, не отображаемые в окне Инспектора Объектов.

Объектно-ориентированный язык Паскаль, лежащий в основе Delphi, в качестве базового имеет принцип соответствия визуальных компонент тем вещам, которые они представляют. Разработчики Delphi поставили перед собой цель, чтобы, например, представление компонента Button (кнопка), инкапсулирующее некий код, соответствовало визуальному изображению кнопки на экране и являлось как можно более близким эквивалентом реальной кнопки, которую можно найти на клавиатуре. И именно из этого принципа родилось понятие свойства.

Если изменить свойства Width и Height компонента Button, кнопка соответствующим образом изменит свои ширину и высоту. При этом нет необходимости после изменения свойства Width указывать объекту, чтобы он перерисовал себя, хотя при обычном программировании именно так и должно поступать.

2.3 Некоторые общие свойства компонентов

Рассмотрим некоторые свойства, которыми обладает каждый визуальный компонент, поскольку эти свойства наследуются от базовых классов иерархии библиотеки визуальных компонентов. Класс TComponent является предком всех визуальных компонентов и от него компоненты получают следующие свойства.

Таблица 1 Свойства класса TComponent

Свойство

Назначение

идентификатор компонента

четырехбайтовое целое свойство, которое программист может использовать по своему усмотрению

От класса TControl порождаются все видимые визуальные компонента и наследуют свойства, связанные расположением и внешним видом компонента. Эти свойства можно разбить на несколько групп.

Таблица 2 Размер и местоположение компонента

Свойство

Назначение

местоположение левого верхнего угла компонента по вертикали

местоположение левого верхнего угла компонента по горизонтали

высота компонента

ширина компонента

Таблица 3 Выравнивание и масштабирование

Свойство

Назначение

выравнивание компонента относительно границ родительского компонента

Alignment

выравнивание надписи на компоненте

фиксация компонента по сторонам родительского компонента

Constraints

сложное свойство, определяющее максимально и минимально допустимые размеры компонента

AutoSize

логическое свойство, разрешающее или запрещающее автоматическое изменение размеров компонента в соответствии с размером его содержимым

Таблица 4 Внешний вид

Свойство

Назначение

цвет компонента

вид курсора при наведении указателя мыши на компонент

надпись на компоненте

сложное свойство, определяющее тип шрифта надписи

логическое свойство, определяющее видимость компонента

PopupMenu

логическое свойство, разрешающее или запрещающее использование всплывающего меню

логическое свойство, определяющее доступность компонента

текст подсказки, которая появляется при задержке курсора мыши на компоненте

ShowHint

логическое свойство, разрешающее или запрещающее использование подсказки

2.4 События в Delphi

Одна из ключевых целей среды визуального программирования – скрыть от пользователя сложность программирования в Windows. При этом, однако, хочется, чтобы такая среда не была бы упрощена до такой степени, что программисты потеряют доступ к самой операционной системе.

Программирование, ориентированное на события – неотъемлемая черта Windows. Delphi предоставляет полный доступ к подструктуре событий, совершаемых в операционной среде Windows. С другой стороны, Delphi упрощает программирование обработчиков таких событий.

Объекты из библиотеки визуальных компонент (VCL) Delphi, равно как и объекты реального мира, имеют свой набор свойств и свое поведение - набор откликов на события, происходящие с ними. Список событий для данного объекта, на которые он реагирует, можно посмотреть, например, в Инспекторе Объектов на странице событий. (На самом деле, на этой странице представлен список свойств, которые представляют из себя ссылки на процедуры-обработчики событий.) Среди набора событий для различных объектов из VCL есть как события, портируемые из Windows (например, события, которые генерируются мышью или клавиатурой), так и события, порождаемые в результате прогона приложения путем изменения свойств объектов).

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

Интегрированная среда разработки Delphi – это среда, в которой есть все необходимое для проектирования, запуска и тестирования создаваемых приложений. Большинство версий Delphi выпускается в нескольких вариантах: а) стандартная, б) профессиональная версия, в) разработка баз данных предметных областей. Эти варианты различаются, в основном разным уровнем доступа к системам управления базами данных. Последние два варианта являются наиболее мощными в этом отношении. Библиотеки компонентов в различных вариантах практически одинаковы.

    Верхней части окна среды отображается полоса главного меню . Назначение каждого пункта меню можно уточнить в справочной системе Delphi. Для получения справки следует выбрать интересующий пункт меню и нажать клавишу F1. Выбор команды меню выполняется любым из стандартных способов: F10, Alt+горячая клавиша или щелчком мыши на нужном пункте меню.

Назначение команд меню представлены в таблице:

Раздел меню

Назначение

1) Меню File (Файл)

Разделы меню позволяют создавать новый проект, новую форму, открыть ранее созданный проект или форму, сохранить проекты или форму в файлах с заданными именами.

2) Меню Edit (Правка)

Разделы этого меню позволяют выполнять обычные для приложений Windows операции с буфером обмена, а также дают возможность выравнивать группы размещенных на форме компонентов по размерам и местоположению.

3) Меню Search (Поиск)

Разделы этого меню позволяют осуществлять поиск фрагментов текста, ошибок, объектов, модулей, переменных и символов в редакторе кода.

4) Меню View (Вид)

Разделы этого меню позволяют вывести на экран или скрыть различные элементы среды проектирования и открыть окна, связанные с интегрированным отладчиком.

5) Меню Project (Проект)

Разделы меню позволяют добавлять и удалять из проекта формы, задавать опции проекта, компилировать проект без его выполнения, дать информацию о размерах приложения.

6) Меню Run (Выполнить)

Предоставляет возможность выполнять проект в нормальном или отладочном режимах, по шагам, останавливаясь в указанных точках, просматривая значения переменных и т.д.

7) Меню Component (Компонент)

Содержит раскрывающееся меню, которое позволяет работать с компонентами: создавать новые компоненты, изменять палитру компонентов и т.п.

8) Меню Database (База данных)

Раздел меню позволяет использовать инструментарий для работы с базами данных.

9) Меню Tools (Сервис)

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

10) Меню Windows (Окно)

Содержит список открытых окон среды и предоставляет возможность перехода из одного окна в другое.

11) Меню Help (Помощь)

Содержит разделы, помогающие работать со справочной системой среды программирования Delphi.

    Ниже полосы главного меню расположены две инструментальные панели . Левая панель (состоящая, в свою очередь, из трех панелей) содержит два ряда кнопок, дублирующих некоторые наиболее часто используемые команды меню (открыть, сохранить, сохранить все и т.д.). Правая панель содержит панель библиотеки визуальных компонентов (или палитра). Палитра компонентов содержит ряд страниц, закладки которых видны в ее верхней части. Страницы сгруппированы в соответствии с их смыслом и назначением. Поскольку число предоставляемых компонентов растет от версии к версии, то остановимся на основных (12 страниц).

Основные Палитры компонентов представлены в таблице:

Палитра компонентов

Назначение

1. Палитра компонентов Standard (Стандартная)

Большинство компонентов на этой странице являются аналогами экранных элементов операционной системы Windows: меню, кнопки, полосы прокрутки, панели и т.п. Имена компонентов можно узнать из всплывающей подсказки. Назначение компонентов можно уточнить, используя систему контекстной справки Delphi.

2. Палитра компонентов Additional (Дополнительная)

Содержит более развитые компоненты: а) воспроизведение звука, музыки и видео; б) отображение графической информации.

3. Палитра компонентов System (Системная)

Предоставляет возможность объединять отдельные элементы, такие как списки каталогов и файлов, а также генерировать события через определенные промежутки времени.

4. Палитра компонентов Win32

Содержит компоненты, позволяющие созданным программам использовать интерфейс Windows.

5. Палитра компонентов Dialogs (Диалоговая)

Содержит стандартные диалоговые окна для операций над файлами, поиска и замены текста, выбор шрифтов, цветов и т.д.

6. Палитра компонентов Data Access, Data Controls (Сервис баз данных)

Использует механизм баз данных для организации доступа к файлам баз данных различных форматов.

7. Палитра компонентов QReport (Отчеты)

Предоставляет компоненты для визуального проектирования отчетов баз данных.

8. Палитра компонентов Servers (Сервис)

Предоставляет компоненты-наследники для доступа ко всем серверным объектам Microsoft Office.

9. Палитра компонентов Samples (Примеры)

Содержит компоненты-примеры, которые можно добавлять в собственные приложения.

10. Палитра компонентов Internet

Предоставляет компоненты для разработки приложений, позволяющих создавать HTML‑файлы непосредственно из файлов баз данных и других типов, взаимодействующих с другими приложениями для Интернета.

    Правее полосы главного меню располагается еще одна небольшая инструментальная панель, содержащая раскрывающийся список и две кнопки. Эта панель служит для сохранения и выбора различных конфигураций окна среды, которые можно создавать и запоминать.

    Под палитрой компонентов располагается окно формы с размещенными на ней компонентами. Форма является основой почти всех приложений Delphi. Форму можно понимать как типичное окно Windows. Она обладает теми же свойствами, что и другие окна. Во время проектирования форма покрыта сеткой из точек. В узлах этой сетки размещаются те компоненты, которые помещены на форму. Во время выполнения приложения эта сетка не видна.

    В основном поле окна слева находится окно Инспектора объектов , с помощью которого в дальнейшем можно задавать свойства компонентов и обработчики событий. Инспектор объектов состоит из двух страниц, каждую из которых можно использовать для определения поведения активного компонента. Первая страница – это Свойства, вторая – События.

Рассмотрим некоторые свойства любого компонента :

Свойство

Назначение

Caption (надпись)

Название компонента

Цвет поверхности компонента

Цвет шрифта

Высота шрифта

Имя шрифта

Размер шрифта

Стиль надписи на компоненте – Жирный

Стиль надписи на компоненте – курсив

Style fsUnderline

Стиль надписи на компоненте – подчеркивание

Style fsStrikeOut

Стиль надписи на компоненте – зачеркивание

Каждый компонент имеет свой набор свойств, который соответствует назначению этого компонента.

Страница Событий – вторая часть Инспектора объектов. На ней указаны все события, на которые может реагировать выбранный объект.

    Одним из наиболее важных элементов среды Delphi является окно Редактора кода . Оно располагается ниже окна формы, обычно при первом взгляде на экран невидимо, т. к. его размер равен размеру формы и окно Редактора кода практически полностью перекрывается окном формы. Редактор кода является полноценным программным редактором. В заголовке окна редактора кода отображается имя текущего файла, с текстом которого производится работа (стандартное имя – Main.pas). В нижней части окна Редактора кода располагается строка состояния. В самой левой ее позиции отображается позиция курсора: номер строки и колонки.

    Выше окна Инспектора объектов расположено окно Дерево объектов , которое отображает структуру компонентов приложения с точки зрения их принадлежности друг к другу.

    Файлы проекта Delphi . Проект состоит из форм, модулей, установок параметров проекта, ресурсов и т.д. Вся эта информация размещается в файлах. Многие из этих файлов автоматически создаются Delphi. Ниже приведена характеристика основных файлов, используемых при создании выполняемого файла приложения.

    Файлы проекта в Delphi, представлены в таблице:

Головной файл проекта (.drp)

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

Файл модуля (.pas)

Каждой создаваемой форме соответствует текстовый файл модуля, используемый для хранения кода. Многие из функций и процедур Delphi хранятся в модулях.

Файл формы (.dfm)

Это двоичный или текстовый файл, который создается для хранения информации о собственных формах.

Файл параметров проекта (.dfo)

В этом файле хранятся установки параметров проекта.

Файл ресурсов (.res)

Этот бинарный файл содержит используемую проектом пиктограмму и прочие ресурсы.

Файл группы файлов (.bpg)

Этот файл создается, если работать с группой проектов.

Файл пакета (.dpk)

Это двоичный файл пакета.

Файлы резервных копий (.dp, df, pa)

Это соответственно файлы резервных копий для файлов проекта, формы и модуля. Можно соответственно изменить расширения этих файлов и таким образом вернуться к предыдущему не испорченному варианту.

Исполняемый файл (.exe)

Это исполняемый файл приложения. Он является автономным, для которого ничего не требуется, если не использовать поддержку пакетов времени выполнения.

Объектный файл модуля (.dcu)

Это откомпилированный объектный файл модуля (.pas), который компонуется в окончательный исполняемый файл.

Некоторые встроенные функции и процедуры Delphi

Родовым является тип String , который имеет разный смысл в зависимости от директивы компилятора. Если включена директива {$H+} (она включена по умолчанию), то String интерпретируется компилятором как тип Ansi String – длинная строка с нулевым символом в конце. Если же включена директива {$H-}, то String интерпретируется компилятором как тип Short String – короткая строка без нулевого символа в конце. Если в объявлении типа после ключевого слова String следует число символов в квадратных скобках (например, String), то независимо от директив компилятора, тип трактуется как строка без нулевого символа в конце с указанным числом символов. Стандартная функция LENGTH возвращает число символов в строке, переданной ей в качестве параметра. Процедура SetLength устанавливает длину строки.

2. Практическая часть .