Как настроить смартфоны и ПК. Информационный портал
  • Главная
  • Обзоры
  • Описание среды Delphi. Среда программирования Delphi Основные компоненты среды программирования delphi

Описание среды Delphi. Среда программирования Delphi Основные компоненты среды программирования delphi

Разработка программного обеспечения для ОС 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 многие программисты обуславливают удобством пользования интерфейсами соответствующего ПО, а также широким набором инструментов, полезных для работы на любом участке создания программы — на этапе дизайна, программирования алгоритмов или отладки.


Отчёт к практической работе содержит 23 страницы, 2 рисунка, 7 таблиц, 9 приложений и 3 источника.

Объект исследования - Среда разработки и язык программирования Delphi, его графические средства.

Целью данной работы является изучение языка программирования Delphi, использование синтаксических и графических средств Delphi, сравнение сред разработки и синтаксиса языков программирования C++ и Delphi. Для сравнения используются среды программирования Microsoft Visual C++ и Delphi 7. Сравнение осуществляется посредством реализации решения девяти определенных задач на Delphi.

DELPHI 7, ОБЪЕКТНО-ОРИЕНТИРОВАННОЕ ПРОГРАММИРОВАНИЕ, MICROSOFT VISUAL C++, СРЕДА РАЗРАБОТКИ, СРАВНЕНИЕ С++ И DELPHI

Введение

1. Сравнение языков с/с++ и pascal/Delphi

1.1 Простые типы данных

1.2 Структурные типы данных

1.2.1 Строковые переменные

1.2.2 Массивы

1.2.3 Множества

1.2.4 Файлы

1.2.5 Классы

1.3 Указатели

2. Сравнение сред разработки

2.1 Borland Delphi 7

2.2 Microsoft Visual C++

Заключение

Перечень ссылок

Приложение А

Приложение Б

Приложение В

Приложение Г

Приложение Д

Приложение Е

Приложение Ж

Приложение З

Приложение И

ВВЕДЕНИЕ

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

Для изучения данного стиля программирования был выбран язык Delphi 7, с помощью которого изучена методика объектно-ориентированного проектирования программ по формализации и решению задачи, технологическими приемами разработки объектно-ориентированных программ.

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

Delphi -- это средства разработки в программировании, которые имеют место быть в рамках приложений Microsoft Windows. Delphi представляет собой актуальную и легкую в использовании программу, которая необходима для генерации автономных программ графического интерфейса или 32-битовых консольных приложений -- программ, которые существуют вне рамок GUI, вместо этого, в соответствии с так называемым «DOS box».
Delphi является первым языком программирования, который обеспечивает уничтожение барьера между приложениями комплексного и упрощенного характера в использовании и низкоуровневыми битовыми программными средствами.

1. СРАВНЕНИЕ ЯЗЫКОВ С/С++ И PASCAL/DELPHI

1.1 Простые типы данных

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

Типы данных можно разделить на следующие группы:

Структурные;

Указатели;

Процедурные(только в Delphi);

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

Целочисленные;

Литерные (Символьные);

Логические (Булевы);

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

В таблице 1.1 можно увидеть сравнение наиболее часто встречаемых простых типов в языках программирования C++ и Delphi.

Таблица 1.1 - Сравнение простых типов данных в С++ и Delphi

Для каждого типа данных существуют отдельные функции, упрощающие работу с ними. В таблице 1.2 приведены некоторые функции для переменных с простыми типами данных в синтаксисе С++ и Delphi.

Таблица 1.2 - Функции для простых типов данных в С++ и Delphi

Различия можно заметить не только в самих типах данных, но и в работе с переменными. Для создания переменной в C++ нужно написать тип имя переменной. В Delphi же, создание переменной выглядит так: имя переменной, двоеточие, имя типа. Более того, в С++ переменную можно объявить в любом месте программы, а в Delphi Только в разделе var. Для присваивания в C++ используется знак =, в Delphi - :=. Операция присваивания в обоих языках программирования берёт то, что находится справа от знака и помещает это в переменную, находящуюся слева от знака присваивания.

Рассмотрим же основные операции для работы с переменными простых типов данных. В таблице 1.3 приведено сравнение их в языках C++ и Delphi.

Таблица 1.3 - Основные операции

Операция

Сложение

Вычитание

Умножение

Деление(целочисленное, простое)

/ (зависит от типа данных)

Остаток от деления

Присваивание

Проверка равенства

Составное сложение

Отсутствует

Составное вычитание

Отсутствует

Составное умножение

Отсутствует

Составное деление

Отсутствует

Составное определение остатка от деления

Отсутствует

Инкремент

Декремент

Логическое НЕ

Больше либо равно

Меньше либо равно

Логическое ИЛИ

Логическое И

Логическое исключающее ИЛИ

Указатель

Указатель структуры

Определение размера в байтах

Поразрядное НЕ

Поразрядное И

Поразрядное ИЛИ

Поразрядное исключающее ИЛИ

Поразрядный сдвиг влево

Поразрядный сдвиг вправо

При сравнении операторов можно заметить явный недостаток Delphi, который проявляется в отсутствии составных операций (>=, <=, +=, -=, *=, /=, %=).

1.2 Структурные типы данных

Теперь перейдем к сравнению структурных типов данных. Структурные типы имеют в своей основе один или более других типов, в том числе и структурных. К структурным типам относятся:

Множества;

1.2.1 Строковые переменные

В Delphi строки обеспечивает тип string, который представляет строку с максимальной длиной около 2х символов. Символы строки кодируются в коде ANSI. Так как строки фактически являются массивами символов, то для обращения к отдельному символу строки можно указать название строковой переменной и номер (позицию) этого символа в квадратных скобках, например, strName [i].

В С++ существует 2 типа строк: массив переменных типа char и специальный класс string. В отличии от типа char, string является классом. Это объясняет необходимость подключения заголовочного файла и наличие множества функций для работы с переменной типа String. Доступ к элементу строки так же можно получить через его номер в строке, указанном в квадратных скобках. Например, strName [i].

1.2.2 Массивы

Массивы в сравниваемых языках схожи. Элементами массива могут быть данные различных типов, включая структурированные. Каждый элемент массива однозначно определяется именем массива и индексом (номером этого элемента в массиве) или индексами, если массив многомерный. Для обращения к отдельному элементу массива указываются имя этого массива и номер (номера) элемента, заключенный в квадратные скобки. Однако, в Delphi, описание массива производится в разделе описания типов данных, тогда как в C++ - в любой точке программы.

1.2.3 Множества

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

<Переменная>: Set Of <Тип>;

set<Тип> <Переменная>;

В C++ Set (множество) - это ассоциативный контейнер STL, хранящий отсортированный набор уникальных объектов. Контейнер set содержит множество элементов. Строго говоря, set обеспечивает следующую функциональность:

1. Добавить элемент в рассматриваемое множество, при этом исключая возможность появления дублей;

2. Удалить элемент из множества;

3. Узнать количество (различных) элементов в контейнере;

4. Проверить, присутствует ли в контейнере некоторый элемент.

1.2.4 Файлы

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

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

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

Ведется работа с файлом. Из него данные либо считываются, либо в него записываются.

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

В таблице 1.4 показано сравнение работы с файлами в C++ и в Delphi.

Таблица 1.4 - сравнение работы с файлами в C++ и в Delphi

Действие

Объявление файла

FILE *идентификатор;

var идентификатор: File ;

Открытие файла для записи

fopen(имя физического файла, “w”)

fopen(f, “w”);

AssignFile(имя логического файла, название файла);
ReWrite(имя логического файла);

AssignFile(myFile, "Test.txt");
ReWrite(myFile);

Запись в файл

fwrite(адрес записываемой величины, размер одного экземпляра, количество записываемых величин, имя логического файла);

fwrite(&dat, sizeof(int), 1, f);

WriteLn(имя логического файла, текст);

WriteLn(myFile, "Hello World");

Закрытие файла

fclose(имя логического файла);

CloseFile(имя логического файла);

CloseFile(myFile);

Открытие файла для чтения

fopen(имя физического файла, “r”)

Чтение из файла

fread(адрес величины, размер одного экземпляра, количество считываемых величин, имя логического файла);

fread(&dat, sizeof(int), 1, f);

ReadLn(имя логического файла, переменная для считывания);

ReadLn(myFile, text);

Проверка на конец файла

Открытие текстового файла, для добавления записей в файл (добавляет в конец файла)

fopen(имя физического файла, “a”)

Append(имя логического файла);

1.2.5 Классы

Механизм классов в C++ позволяет пользователям определять собственные типы данных. По этой причине их часто называют пользовательскими типами. Класс может наделять дополнительной функциональностью уже существующий тип.

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

class ClassA { /* ... */ };

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

1. написать ключевое слово class, а после него - имя класса;

2. указать только имя класса.

Оба способа сослаться на тип класса эквивалентны. Первый заимствован из языка C и остается корректным методом задания типа класса, а второй введен в C++ для упрощения объявлений.

Функции-члены класса объявляются в его теле. Это объявление выглядит точно так же, как объявление функции в области видимости пространства имен.

Функции-члены отличаются от обычных функций следующим:

1. Функция-член объявлена в области видимости своего класса, следовательно, ее имя не видно за пределами этой области. К функции-члену можно обратиться с помощью одного из операторов доступа к членам - точки (.) или стрелки (->):

ptrScreen->home();

myScreen.home();

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

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

<Имя класса> = class {Заголовок описания}

<Имя свойства 1>: <Тип свойства 1>; {Описание свойства 1}

<Имя свойства М>: <Тип свойства N>; {Описание свойства N}

<Заголовок метода 1>; {Описание метода 1}

<Заголовок метода М>; {Описание метода М}

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

Procedure <Имя класса>.<Имя метода>(<Список параметров>);

или для методов-функций:

Function <Имя класса>.<Имя метода>(<Список параметров>):

<Тип значения>;

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

В таблице 1.5 показано сравнение парадигм объектно-ориентированного программирования на языках программирования C++ и Delphi на примерах.

Таблица 1.5 - Сравнение парадигм ООП в C++ и Delphi

Наименование парадигмы

Инкапсуляция

int a, b; //данные открытого интерфейса

int ReturnSomething(); //метод открытого интерфейса

int Aa, Ab; //скрытые данные

void DoSomething(); //скрытый метод

TMyClass = class

FMyField: Integer;

procedure SetMyField(const Value: Integer);

function GetMyField: Integer;

property MyField: Integer read GetMyField write SetMyField;

Наследование

class A{ //базовый класс

class B: public A{ //public наследование

class C: protected A{ //protected наследование

class Z: private A{ //private наследование

TAncestor = class

// Виртуальная процедура

procedure VirtualProcedure; virtual; abstract;

procedure StaticProcedure;

Наследник:

TDescendant = class(TAncestor)

// Перекрытие виртуальной процедуры

procedure VirtualProcedure; override;

procedure StaticProcedure;

Полиморфизм

//Перегруженная функция

virtual void f()

std::cout << "A::f";

class B: public A

//Перегруженная функция

std::cout << "B::f";

// базовый класс

constructor Create(name:string);

function f: string; virtual;

// производный от базового

constructor Create(name:string;gr:integer);

// Перегруженная функция

function f: string; override;

// производный от базового

constructor Create(name:string;dep:string);

// Перегруженная функция

function f: string; override;

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

В таблице 1.6 приведены атрибуты видимости в Delphi и в C++.

Таблица 1.6 - Атрибуты видимости

Атрибут видимости

Private- доступ открыт самому классу (т.е. функциям-членам данного класса)

Protected - доступ открыт классам, производным от данного

Public- доступ открыт всем, кто видит определение данного класса

Published - Поля, свойства и методы, описанные в данном разделе, называются опубликованными. Их область видимости эквивалентна области видимости общедоступных описаний. Отличие состоит в том, что информация о них, за исключением ряда типов, например real, на этапе проектирования программы помещается в инспектор объектов. Описания, расположенные сразу после заголовка класса, при включенной директиве компилятора {$M+}, по умолчанию принимаются опубликованными.

1.3 Указатели

Указатель (пойнтер, англ. pointer) -- переменная, диапазон значений которой состоит из адресов ячеек памяти и специального значения -- нулевого адреса. Значение нулевого адреса не является реальным адресом и используется только для обозначения того, что указатель в данный момент не может использоваться для обращения ни к какой ячейке памяти.

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

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

И C++ и Delphi содержат, две основные операции над указателями: присваивание и разыменование. Первая из этих операций присваивает указателю некоторый адрес. Вторая служит для обращения к значению в памяти, на которое указывает указатель.

При объявлении переменной типа указатель в C++, необходимо определить тип объекта данных, адрес которых будет содержать переменная, и имя указателя с предшествующей звездочкой (или группой звездочек). Формат объявления указателя:

спецификатор-типа [ модификатор ] * описатель.

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

В качестве модификаторов при объявлении указателя могут выступать ключевые слова const, near, far, huge. Ключевое слово const указывает, что указатель не может быть изменен в программе. Размер переменной объявленной как указатель, зависит от архитектуры компьютера и от используемой модели памяти, для которой будет компилироваться программа. Указатели на различные типы данных не обязательно должны иметь одинаковую длину.

Для модификации размера указателя можно использовать ключевые слова near, far, huge.

Ниже, приведены некоторые примеры объявления указателей на C++.

unsigned int * a;

addres = & nomer;

(double *)addres ++;

Переменная addres объявлена как указатель на объект любого типа. Поэтому ей можно присвоить адрес любого объекта (& - операция вычисления адреса). Однако, ни одна арифметическая операция не может быть выполнена над указателем, пока не будет явно определен тип данных, на которые он указывает. Это можно сделать, используя операцию приведения типа (double *) для преобразования addres к указателю на тип double, а затем увеличение адреса.

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

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

Для описания типизированной ссылки не предусмотрен какой-либо специальный тип данных, в отличие от нетипизированных указателей, имеющих тип Pointer. Поскольку ссылочная переменная такого рода всегда указывает на данные конкретного типа, то ее описание и строится на основе этого типа. Для указания на ссылочную природу переменных используется оператор «^», и описание выглядит следующим образом:

Var <Переменная>:^<Название типа>;

Или в разделе описания типов данных:

Туре <Новый тип данных> =^<Тип данных>;

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

В таблице 1.7 приведены некоторые отличия синтаксисов C++ и Delphi в области указателей.

Таблица 1.6 - Отличие указателей в C++ и Delphi

Как мы видим, есть некоторые отличия в работе с указателями и адресами в C++ и в Delphi, однако общая структура работы с ними свойственна обоим языкам.

2. СРАВНЕНИЕ СРЕД РАЗРАБОТКИ

2.1 Borland Delphi 7

После загрузки среды программирования Delphi 7, на экране появится главное окно.

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

Object TreeView - служит для отображения всех объектов расположенных на текущей форме разрабатываемого проекта.

Object Inspector - служит для отображения и редактирование свойств компонентов расположенных на форме разрабатываемого приложения.

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

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

File - содержит набор команд для работы с файлами, позволяет создавать новые проекты, добавлять новые файлы в проект на основе различных шаблонов, переименовывать файлы проекта, а также распечатывать их. Сюда же включена команда закрытия среды разработки;

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

View - под этим названием объединены команды вызова инструмента управления проектом, такие как инспектор объектов, конструктор форм, менеджер проектов и т.д.;

Project - предназначен для того чтобы добавлять и удалять модули проекта, сохранять проект, добавлять проекты в группу и убирать их из неё, компилировать как отдельные проекты, так и все проекты в группе, загружать файл самого проекта в редактор кода, а также вызывать диалог настройки свойств проекта;

Run - позволяет запускать проект на выполнение как под отладчиком, так и без него, конфигурировать строку параметров проекта при запуске, производить отладку, задать точки останова, осуществлять пошаговое выполнение кода, просматривать значения переменных и изменять их;

Component - здесь сосредоточены команды, предназначенные для установки новых компонентов и пакетов компонентов и создания новых компонентов и шаблонов компонентов;

Database - здесь сосредоточены команды управления базами дынных;

Tools - позволяет настраивать свойства рабочей среды Delphi и отладчика, произвести настройки репозитория, добавлять и удалять дополнительные утилиты, а так же команды запуска этих самых утилит;

Window - позволяет переключаться между окнами, если вы отроете какой - либо модуль для редактирования в новом окне;

Help - объединяет команды вызова справочной системы Delphi и её настройки, а так же позволяет обратиться к Web-ресурсам компании Borland для получения дополнительной информации.

Можно вручную настроить панель инструментов. Это было сделано для удобства работы. Для этого нужно вызвать диалоговое окно по ссылке View-Toolbars-Customize.

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

После ввода текста функции обработки события и сохранения проекта можно из меню Project выбрать команду Compile и выполнить компиляцию. Процесс и результат компиляции отражаются в диалоговом окне Compiling (РИС. В38). В это окно компилятор выводит ошибки (Errors), предупреждений (warnings) и подсказок (Hints). Сами сообщения об ошибках, предупреждения и подсказки отображаются в нижней части окна редактора кода

На рисунке 2.1 изображено главное окно среды разработки Delphi 7.

Рисунок 2.1 - Главное окно Delpi 7

2.2 Microsoft Visual C++

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

Рисунок 1. Начальная страница MV C++

Расположение окон инструментов и других элементов интегрированной среды разработки может изменяться в зависимости от примененных параметров и настроек, выполняемых пользователем в процессе работы. Параметры можно изменить с помощью средства Import and Export Settings Wizard. Выбрав параметр Сбросить все параметры, можно изменить язык программирования по умолчанию.

Можно легко перемещать и закреплять окна с помощью визуального направляющего ромба или временно скрывать окна с помощью функции автоскрытия. Дополнительные сведения см. в разделе Практическое руководство. Размещение и закрепление окон.

Интегрированную среду разработки можно автоматизировать и расширить с помощью модели автоматизации Visual Studio.

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

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

В среде Visual Studio предусмотрен мощный набор средств построения и отладки. Благодаря конфигурациям построения можно выбирать компоненты для построения, исключать компоненты, которые не требуется включать в построение, а также определять, как будут построены выбранные проекты и для какой платформы. Конфигурации построений доступны как для решений, так и для проектов.

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

ЗАКЛЮЧЕНИЕ

программирование delphi класс массив

При выполнении данной практической работы были изучены и освоены средства языка программирования Delphi. Так же результатом данной работы является сравнение языков C++ и Delphi. Были освоены графические средства языка. В ходе работы использовались методы объектно-ориентированного программирования и проектирования, метод перебора, метод накопления.

Была организована работа с текстовыми и бинарными файлами прямого доступа, работа с динамическими структурами данных, работа с символьными и такстовыми данными, рекурсия, наследование, инкапсуляция, полиморфизм, работа с компонентами Delphi, такими как StringGrid, Memo, Edit, RichEdit, Label, Button, GroupBox, Timer и т.п.

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

ПЕРЕЧЕНЬ ССЫЛОК

Сухарев М. Основы Delphi профессиональный подход.- НиТ - Санкт Петербург, 2004г.-596.

Стиввенс Р. Delphi Готовые алгоритмы. - ДМК - Москва, 2004г - 380.

Банкел Д., Фундаментальные алгоритмы и структуры данных в Delphi.-DS - Москва, 2003г. - 555с.

Подобные документы

    Изучение общей структуры языка программирования Delphi: главные и дополнительные составные части среды программирования. Синтаксис и семантика языка программирования Delphi: алфавит языка, элементарные конструкции, переменные, константы и операторы.

    курсовая работа , добавлен 17.05.2010

    Delphi - среда быстрой разработки, в которой в качестве языка программирования используется типизированный объектно-ориентированный язык Delphi. Варианты программного пакета. Особенности работы, вид экрана после запуска. Описание структуры программы.

    курсовая работа , добавлен 25.11.2014

    Проектирование программного модуля в среде программирования Borland Delphi 7.0. Схемы алгоритмов решения задач по темам "Символьные переменные и строки", "Массивы", "Работа с файлами", "Создание анимации". Реализация программного модуля, код программы.

    отчет по практике , добавлен 21.04.2012

    Эффективные средства разработки программного обеспечения. Технология визуального проектирования и событийного программирования. Конструирование диалоговых окон и функций обработки событий. Словесный алгоритм и процедуры программы Borland Delphi 7 Studio.

    дипломная работа , добавлен 21.05.2012

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

    дипломная работа , добавлен 13.07.2011

    Предмет объектно-ориентированного программирования и особенности его применения в средах Паскаль, Ада, С++ и Delphi. Интегрированная среда разработки Delphi: общее описание и назначение основных команд меню. Процедуры и функции программы Delphi.

    курсовая работа , добавлен 15.07.2009

    Основные приемы работы в среде программирования Delphi. Особенности технологии создания простейших приложений. Работа с компонентами среды разработки приложений. Ввод, редактирование, выбор и вывод информации. Аспекты использования структуры ветвления.

    методичка , добавлен 17.11.2011

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

    курсовая работа , добавлен 04.08.2014

    Borland Delphi 7 как универсальный инструмент разработки, применяемый во многих областях программирования, функции: добавление информации об абитуриентах в базу данных, формирование отчетов. Рассмотрение и характеристика основных компонентов Delphi.

    контрольная работа , добавлен 18.10.2012

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

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

Delphi позволяет быстро и удобно разрабатывать эффективные приложения, включая приложения для работы с базами данных. Система имеет развитые возможности по созданию пользовательского интерфейса, широкий набор функций, методов и свойств для решения прикладных расчетно-вычислительных задач. В системе имеются развитые средства отладки, облегчающие разработку приложений. Традиционно Delphi относят к системам быстрой разработки приложений. Вместе с тем эта система обладает практически всеми возможностями СУБД, таких как Microsoft Access и Visual FoxPro. Она позволяет удобно создавать приложения с помощью инструментальных программных средств, визуально подготавливать запросы к базам данных, а также непосредственно писать SQL- запросы к базам данных. Применительно к работе с базами данных Delphi обеспечивает широкий набор инструментальных средств, поддерживает современные технологии, в том числе многоуровневую технологию «клиент - сервер» .

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

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

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

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

Две вышеперечисленные особенности Delphi

1) визуальное конструирование форм

2) использование библиотеки визуальных компонентов отражают большие преимущества этого языка и являются положительными моментами в процессе дальнейшей разработки и создания пакета автоматизированных методик.

Мощность и гибкость языка программирования Delphi - безусловное достоинство Delphi, выгодно отличающее эту систему программирования от других инструментов для разработки программ. Ядром языка Delphi является язык Паскаль.

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

Среда Delphi устраняет необходимость программировать такие компоненты Windows общего назначения, как метки, пиктограммы и даже диалоговые панели. Delphi позволяет приспособить компоненты диалоговой панели (например, Choose File и Save File) к имеющейся задаче, чтобы они работали именно так, как требуется создаваемому приложению. Также здесь имеются предварительно определенные визуальные и невизуальные объекты, включая кнопки, объекты с данными, меню и уже построенные диалоговые панели. С помощью этих объектов можно, например, обеспечить ввод данных просто несколькими нажатиями кнопок мыши, не прибегая к программированию. Это наглядная реализация применений CASE-технологий в современном программировании приложений .

В процессе создания проектов в среде Windows с помощью Delphi наблюдаются следующие выгоды: устраняется необходимость в повторном вводе данных; обеспечивается согласованность проекта и его реализации; увеличивается производительность разработки и переносимость программ.

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

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

Cреда Delphi включает в себя полный набор визуальных инструментов для скоростной разработки приложений (RAD - rapid application development), поддерживающей разработку пользовательского интерфейса и подключение к корпоративным базам данных. VCL - библиотека визуальных компонент, включает в себя стандартные объекты построения пользовательского интерфейса, объекты управления данными, графические объекты, объекты мультимедиа, диалоги и объекты управления файлами, управление DDE и OLE. Визуальные компоненты Delphi открыты для надстройки и переписывания.

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

Среда Delphi состоит их четырех окон, управляемых как многооконное приложение с интерфейсом одного документа (рисунок 1). Главное окно Delphi управляет связанными с ним окнами - инспектора объектов, формы и окна редактора кода.

Рисунок 1 - Интерфейс основных окон среды Delphi

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

Рисунок 2 - Главное окно

Окно инспектора объектов (рисунок 3) является многостраничным окном, содержащим помеченные ярлыками страницы свойств (Ргореperties) и событий (Events). На странице свойств показаны свойства объектов, расположенных в окне формы (Form). На странице событий представлены события, на которые реагирую объекты окна формы. Инспектор Объектов состоит из двух страниц, каждую из которых можно использовать для определения поведения данного компонента. Первая страница - это список свойств, вторая - список событий. Если нужно изменить что-нибудь, связанное с определенным компонентом, то Вы обычно делаете это в Инспекторе Объектов. К примеру, Вы можете изменить имя и размер компонента TLabel, изменяя свойства Caption, Left, Top, Height, и Width.

Можно использовать закладки внизу Инспектора Объектов для переключения между страницами свойств и событий. Страница событий связана с Редактором; если Вы дважды щелкнете мышкой на правую сторону какого-нибудь пункта, то соответствующий данному событию код автоматически запишется в Редактор, сам Редактор немедленно получит фокус, и Вы сразу же имеете возможность добавить код обработчика данного события. Данный аспект среды программирования Delphi будет еще обсуждаться позднее.

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

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

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

Рисунок 3 - Инспектор Объектов

Дизайнер Форм в Delphi - то место, где Вы создаете визуальный интерфейс программы. Он столь интуитивно понятен и прост в использовании, что создание визуального интерфейса превращается в детскую игру. Дизайнер Форм первоначально состоит из одного пустого окна, которое Вы заполняете всевозможными объектами, выбранными на Палитре Компонент. Несмотря на всю важность Дизайнера Форм, местом, где программисты проводят основное время, является Редактор. Логика является движущей силой программы и Редактор - то место, где Вы ее «кодируете» .

Рисунок 4 - Дизайнер Форм

Несмотря на всю важность Дизайнера Форм, местом, где программисты проводят основное время, является Редактор.

Окно редактора кода (рисунок 5) дает возможность набирать и редактировать код модуля программы на языке Object Pascal. Это окно является многостраничным, оно позволяет выполнять переходы между модулями программы. Логика является движущей силой программы и Редактор - то место, где Вы ее «кодируете». В окне Редактора Вы создаете логику управления программой.

Рисунок 5 - Окно Редактора

В главном окне принято выделять три основных выделенных элемента (не считая стандартной строки-заголовка):

Строка меню (Menu System);

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

Панель быстрого доступа (SpeedBar).

Меню (рисунок 6) предоставляет быстрый и гибкий интерфейс к среде Delphi, потому что может управляться по набору «горячих клавиш».

Рисунок 6 - Строка меню

В этом смысле проектирование в Delphi мало чем отличается от проектирования в интерпретирующей среде, однако после выполнения компиляции мы получаем код, который исполняется в 10 - 20 раз быстрее, чем то же самое, сделанное при помощи интерпретатора.

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

Палитра Компонент (рисунок 7) позволяет Вам выбрать нужные объекты для размещения их на Дизайнере Форм. Для использования Палитры Компонент просто первый раз щелкните мышкой на один из объектов и потом второй раз - на Дизайнере Форм. Выбранный Вами объект появится на проектируемом окне и им можно манипулировать с помощью мыши.

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

Рисунок 7 - Палитра Компонент

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

Рисунок 8 - SpeedBar

Последняя важная часть среды Delphi - Справочник (on-line help), (рисунок 9). Для доступа к этому инструменту нужно просто выбрать в системном меню пункт Help и затем Delphi Help.

Рисунок 9 - Справочник

Редактор Картинок (рисунок 10) работает аналогично программе Paintbrush из Windows. Вы можете получить доступ, к этому модулю выбрав пункт меню Tools | Image Editor.

Рисунок 10 - Редактор Картинок

А теперь нужно рассмотреть те элементы, которые программист на Delphi использует в повседневной жизни. В дополнение к инструментам, обсуждавшимся выше, существуют пять средств, поставляемых вместе с Delphi. Эти инструментальные средства: встроенный отладчик; внешний отладчик (поставляется отдельно); компилятор командной строки; WinSight; WinSpector.

Данные инструменты собраны в отдельную категорию не потому, что они менее важны, чем другие, но потому, что они играют достаточно абстрактную техническую роль в программировании .

Чтобы стать сильным программистом на Delphi, Вам понадобится понять, как использовать отладчик Delphi. Отладчик позволяет Вам пройти пошагово по исходному тексту программы, выполняя по одной строке за раз, и открыть просмотровое окно (Watch), в котором будут отражаться текущие значения переменных программы.

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

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

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

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

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

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

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

Размещено на http://www.allbest.ru/

3.2 Описание среды программирования

3.2.1 Среда разработчика Delphi

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

Среди пользователей персональных компьютеров в настоящее время наиболее популярно семейство операционных систем Windows и, естественно, что тот, кто собирается программировать, стремится писать программы, которые будут работать в этих системах. Бурное развитие вычислительной техники, потребность в эффективных средствах разработки программного обеспечения привели к появлению систем программирования, ориентированных на так называемую «быструю разработку», среди которых можно выделить Borland Delphi и Microsoft Visual Basic. В основе систем быстрой разработки лежит технология визуального проектирования и событийного программирования, суть которой заключается в том, что среда разработки берет на себя большую часть генерации кода программы, оставляя программисту работу по конструированию диалоговых окон и функций обработки событий.

Delphi- это среда разработки программ, ориентированных на работу в операционных системах семейства Windows. Программы в Delphi создаются на основе современной технологии визуального проектирования, которая, в свою очередь, базируется на идеях объектно-ориентированного программирования. Программы в Delphi пишутся на языке Object Pascal, который является преемником и развитием языка Turbo Pascal. Язык программирования Turbo Pascal, а также одноименная интегрированная среда разработки, в которой он использовался, в недавнем прошлом завоевал широкую популярность как средство разработки программных продуктов и особенно как средство обучения программированию. Эта популярность была обусловлена простотой языка, высококачественным компилятором и удобной средой разработки.

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

3.2.2 Интегрированная среда разработки Delphi

Интегрированная Среда Разработки (Integrated Development Environment - IDE, в дальнейшем мы будем использовать для нее аббревиатуру ИСР) - это среда, в которой есть все необходимое для проектирования, запуска и тестирования приложений и где все нацелено на облегчение процесса создания программ. ИСР интегрирует в себе редактор кодов, отладчик, инструментальные панели, редактор изображений, инструментарий баз данных - все с чем приходится работать.

Запустите Delphi с помощью меню Windows Пуск | Программы . Когда вы щелкните на пиктограмме Delphi, перед вами откроется основное окно Интегрированной Среды Разработки (см. рис. 1).В основных чертах окна ИСР всех версий Delphi одинаковы.

Рис 1 Основное окно Интегрированной Среды Разработки в Delphi6

В верхней части окна ИСР вы видите полосу главного меню . Ее состав несколько различается от версии к версии и, кроме того, зависит от варианта Delphi, с которым вы работаете.

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

File (Файл) - содержит набор команд для работы с файлами, позволяет добавлять их в проект, создавать новые файлы с помощью шаблонов, удалять, переименовывать и распечатывать. Кроме того, в этом разделе находятся команды для создания новых форм и приложений и команда выхода. В Delphi 6 сюда включена команда для создания нового элемента Frame (фрейм).

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

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

View (Вид) - под этим названием объединены команды для вызова наиболее часто используемых инструментов управления проектом, таких как Project Manager (Менеджер проекта), Translation Manager (Менеджер языка DLL), Object Inspector (Инспектор объектов), To - Do - List (Список задач), Alignment Palette (Окно выравнивания компонентов), Browser (Исследователь), Code Explorer (Проводник по программе), Component List (Список компонентов), Window List (Список окно), Type Library (Библиотека типов), Debug Windows (Окно отладчика). В число последних входят Breakpoints (Список точек остановки), Call Stack (Окно стека), Watches (Окно контроля переменных), Local Variables (Окно лакальных переменных), Threads (Окна статуса нитей), Modules (Окно исполняемых модулей), CPU (Окно контроля переменных), FPU (Окно операций над числами с плавающей запятой), Event Log (Окно событий). Кроме того, здесь же находятся раздел меню Toggle Form / Unit (Переключатель формы / модуля) и опции Forms (Окно формы), Units (Окно модулей), New Edit Window (Новое окно редактирования), которые, как ясно уже из названия, позволяют выводить на экран окна форм, модулей и создавать новое окно редактирования, а также производить настройку панели инструментов. В дополнение к ним в Delphi5 появилась возможность сохранять текущие настройки среды для последующего использования с помощью группы команд из раздела Desktops .

Project (Проект) - предназначен для того, чтобы добавлять проект в Repository (Архив объектов), загружать окно редактирования текста проекта, добавлять проекты в группу, компилировать как отдельный проект, так и группу в целом, проверять корректность кода и в том, и в другом случае, получать информацию об итогах компиляции проекта, задавать свойства web-приложений и экспортировать их на Web-сервер, а также вызывать элемент Options (Окно свойств проекта). В дополнение к этим функциям в Delphi5 появилась возможность с помощью группы команд из раздела Languages создавать специальную DLL с файлом ресурсов, содержащим поддержку национального языка.

Run (Выполнить) -позволяет запускать разработанное приложение, передавать ему строку параметров, производить отладку, задавать точки остановки, осуществляет пошаговое выполнение, просматривать значения переменных и изменять их. При разработке компонентов ActiveX с помощью команд меню можно зарегистрировать ActiveX-сервер или удалить запись о нем из системного реестра. Данное меню содержит также опцию, которая необходима, чтобы установить MTS Object на Microsoft Transaction Server (MTS) для его дальнейшего использования под управлением этого сервера. В Delphi 5 появился раздел Attach to Process , который позволяет производить отладку процессов, запущенных не только на локальном, но и на удаленном компьютере.

Component (Компоненты) - здесь сосредоточены команды, предназначенные для установки компонентов, импорта ActiveX-компонентов, создания новых компонентов и шаблонов компонентов, редактирования пакетов, а также настройки палитры компонентов.

Database (Базы Данных) - содержат команды вызова утилит для работы с базами данных, таких как SQL Explorer (Исследователь баз данных), SQL Monitor (SQL монитор) и Form Wizard (Мастер создания форм).

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

Help (Помощь) - объединяет команды вызова справочной системы Delphi и ее настройки, а также позволяет обратиться к Web-серверу для получения дополнительной информации.

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

SpeedBar (Панель инструментов) позволяет организовать быстрый доступ к нужным вам инструментам Delphi.

Для того чтобы настроить панель инструментов, выберите раздел View => Toolbars главного меню или воспользуйтесь всплывающим меню панели инструментов. После этого укажите, какие из групп "быстрых" кнопок следует отображать на панелью Доступны Standard (Стандартная), View (Просмотр), Debug (Отладчик), Custom (Пользовательская), Component Palette (Палитра компонентов). Вы можете выбрать те из них, которые необходимы для работы, и кроме того, определить, какие "быстрые" кнопки будут входить в каждую из групп.

Настройка панели инструментов производится следующим образом. Сначала выберите раздел всплывающего меню Customize (Пользовательские настройки) и в появившемся окне (см. рис. 2) откройте страницу Commands (Команды). Далее с помощью мыши выберите в правом окне пиктограмму нужной вам опции и перетащите ее на панель инструментов. Для удаления ненужных кнопок достаточно перетащить их с панели инструментов в окно Commands .

В дополнение к этому с помощью страницы Options (Опции) данного окна можно установить, показывать или нет подсказки (строка Show tooltips (Показывать названия инструментов)) при перемещении курсора над кнопками панели инструментов и включать или нет в подсказку комбинацию " быстрых" клавиш (строка Show shortcut keys on tooltips (Показывать " быстрые" клавиши инструментов)) для вызова команды, запускаемой щелчком по кнопке.

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

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

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

Standard - стандартные компоненты управления Delphi. расширяющие возможности предыдущего набора;

Additional -дополнительные компоненты управления Delphi, расширяющие возможности предыдущего набора;

Win 32 - компоненты, инкапсулирующие в себе набор 32-разрядных интерфейсов windows (9x/NT);

System - специфические системные не визуальные компоненты Delphi;

Data Access - компоненты для доступа к базам данных;

Data Controls - компоненты для отображения информации из баз данных;

ADO - компоненты, позволяющие подключатся к базам данных с использованием ActiveX Data Objects (ADO);

InterBase - компоненты, предназначенные для подключения к базам данных InterBase без использования Borland Database Engine (BDE) или ActiveX Date Objects (ADO);

MIDAS - компоненты для многозвенной технологии доступа к базам данных;

InternetExpress -компоненты, позволяющие создавать приложения, которые могут работать как с Web Server application (Internet-приложениями), так и с multi-tiered database (многозвенными приложениями);

Internet -компоненты для работы в Internet;

FastNet components - компоненты, благодаря которым приложения могут использовать различные Internet - протоколы;

Decision Cube - компоненты для многомерного анализа информации баз данных (только в поставке Delphi Client/Server);

QReport - компоненты для визуального проектирования печатных отчетов;

Dialogs - компоненты, инкапсулирующие в себе стандартные диалоговые окна Windows;

Win 3.1 - компоненты управления Windows 3.1 (для обратной совместимости приложений) ;

Samples - компоненты, которые используется как примеры в документации (их тексты находится в папке /DELPHI/SOURCE/SAMPLES/);

ActiveX - компоненты ActiveX, разработанные сторонними фирмами;

Servers page components -компоненты, которые представляют собой "обертку" VCL для популярных COM-серверов.

Палитра компонентов может отображаться или не отображаться на панели инструментов Delphi. Управление этой опцией осуществляется с помощью раздела меню View => Component Palette. Как и в предыдущих версиях, конфигурирование палитры осуществляется без перекомпиляции VCL.

В основном поле окна вы можете видеть слева окно Инспектор Объектов (Object Inspector), с помощью которого вы в дальнейшем будете задавать свойства компонентов и обработчики событий. Эта страница состоит из 2-х колонок: левая колонка содержит название свойства, а правая - конкретное значение свойства (см.рис.4)

рис. 4 Инспектор Объектов

Окно Инспектора Объектов отображает информацию для того компонента, который выделен щелчком мыши. Строки страницы этого окна выбираются щелчком мыши и могут отображать простые или сложные свойства. К простым относятся свойства, которые определяются одним значением - числом, строкой символов, значением False или True и т.д. Сложные свойства определяются совокупностью значений. Слева от имени таких свойств указывается символ «+». Двойной щелчок по имени такого свойства приводит к раскрытию списка значений сложного свойства. Закрывается раскрытый список также двойным щелчком мыши по имени сложного свойства. Интересным новшеством в Delphi 6 является добавление в Инспекторе Объектов так называемых расширенных встроенных компонентных ссылок (expanded inline component references) или, короче, встроенных компонентов. Под этим термином подразумеваются некоторые свойства компонентов, значениями которых являются имена других компонентов (т.е. ссылки на другие компоненты).

Например, у многих компонентов имеется свойство Popup Menu, содержащее имя компонента, являющегося контекстным меню. Свойства, которые содержат ссылку на встроенный компонент, отображаются в Инспекторе Объектов по умолчанию красным цветом. Когда такому свойству присваивают значение, около него появляется символ «+». Если выполнить двойной щелчок по свойству, содержащему имя встроенного компонента либо просто щелкнуть по символу «+», то раскроется список свойств встроенного компонента.

Свойства встроенного компонента по умолчанию отображаются зеленым цветом.

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

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

3.2.3 Структура проекта Delphi

Программа Delphi - это несколько связанных между собой файлов. Так, любая программа всегда состоит из уже знакомого нам файла проекта (такой файл имеет расширение.dpr) и одного или нескольких модулей (файлы с расширением.pas). Файл проекта не предназначен для редактирования пользователем и создается автоматически самой системой программирования Delphi. Для того чтобы увидеть содержимое файла проекта, необходимо выполнить команду Project | View Source. Содержимое файла проекта может быть, например, следующим:

program Projectl ;

Forms ,

Unitl in "Unitl.pas" {Forml};

{$R *.RES}

Application.Initialize;

Application.CreateForm(TForml, Forml);

Application.Run ;

end .

Файл проекта (главный модуль) начинается словом program, за которым следует имя программы, совпадающее с именем проекта. Имя проекта задается программистом в момент сохранения файла проекта, и оно определяет имя создаваемого средой Delphi исполняемого файла (файла с расширением.ехе). Далее за словом uses следуют имена используемых модулей: стандартного модуля Forms и модуля формы Unitl. Похожая на комментарий директива {$R *.res} указывает компилятору, что нужно использовать файл ресурсов, который содержит описание* ресурсов приложения, например, пиктограммы. Звездочка указывает, что имя файла ресурсов такое же, как и у файла проекта, но с расширением.res.

Исполняемая часть главного модуля находится между операторными скобками begin...end. Операторы исполняемой части обеспечивают инициализацию приложения и вывод на экран стартового окна.

Помимо главного модуля каждая программа включает как минимум один модуль формы, который содержит описание стартовой формы приложения и поддерживающих ее работу процедур. В Delphi каждой форме соответствует свой модуль. Для переключения между формой и окном редактора кода, содержащего соответствующий модуль, следует выполнить команду главного меню View | Toggle Form/Unit, либо нажать функциональную клавишу F12.

Модули - это программные единицы, служащие для размещения фрагментов программ. При помощи содержащихся в них текстов программ (программных кодов) и реализуется решаемая пользователем задача. Модули имеют стандартную конструкцию (последовательность и перечень разделов), предусмотренную языком программирования Object Pascal. Приведем структуру модуля в общем виде:

unit < имя модуля >;

interface

…………………………

implementation

…………………………

initialization

…………………………

finalization

…………………………

end .

В качестве примера приведем содержимое модуля в том виде, в котором он находится сразу после загрузки среды Delphi:

unit Unitl;

interface

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

TForml = class(TForm)

{ Private declarations }

{ Public declarations }

Form1: TForm1;

implementation

{$ R *. dfm }

end .

Начинается модуль словом unit, за которым следует имя модуля. Именно это имя упоминается в списке используемых модулей в операторе uses главного модуля приложения.

Модуль может состоять из четырех разделов: интерфейса, реализации, инициализации и завершающей части.

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

Раздел реализации начинается словом implementation и содержит объявления локальных переменных, процедур и функций, поддерживающих работу формы. В начале раздела реализации располагается директива {$R *.dfin}, указывающая компилятору, что в-раздел реализации надо вставить команды установки значений свойств формы, которые находятся в файле с расширением ".dfm, имя которого совпадает с именем модуля. Файл в формате dfm генерируется Delphi на основе внешнего вида формы.

За директивой {$R *.dfm} располагаются описания процедур обработки событий формы. Сюда же программист может поместить описание своих процедур и функций, которые могут вызываться из процедур обработки событий.

Инициирующая и завершающая части являются необязательными. Инициирующая часть начинается словом initialization либо заключается в оператор-1ые скобки begin...end. Операторы из этой части выполняются до передачи управления основной программе и обычно используются для подготовки ее работы.

Завершающая часть начинается словом finalization и содержит операторы, выполняющиеся в момент окончания программы.

В приведенном выше примере модуля инициирующая и завершающая части отсутствуют.

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

При компиляции программы Delphi создает файлы с расширениями.dcu для каждого модуля.

Таким образом, pas-файл содержит программный код модуля, который был сформирован в окне редактора кода совместными усилиями программиста и среды Delphi, в файле с расширением.dfm хранится описание содержимого окна формы, а в dcu-файле находится результат преобразования текста из обоих файлов в машинные инструкции. Компоновщик, входящий в интегрированную среду Delphi, преобразует dcu-файлы в единый загрузочный (выполнимый) ехе-файл. Выполнимый файл позволяет запускать программу как автономное приложение.

3.2.4 Библиотека визуальных компонентов

Классы созданные разработчиками Delphi, образуют сложную иерархическую структуру, называемую Библиотекой визуальных компонентов (Visual Component Library -VCL). Количество входящих в VCL классов составляет несколько сотен. На рисунке 5 изображены базовые классы, являющиеся родоначальниками всех остальных классов.

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

Характерным примером класса, определенного в VCL, но не являющегося компонентом, является класс TFont. Мы не можем непосредственно поместить на форму объект класса TFont. С другой стороны, при работе, например, с такими компонентами, как Label или Edit мы будем использовать свойство Font классового типа TFont.

Размещено на http://www.allbest.ru/

Заметим также, что не все компоненты-потомки класса TComponent являются визуальными. Например, компонент Timer, предназначенный для отсчета интервалов реального времени, является невизуальным.

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

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

Описание среды функционирования. Плюсы и минусы Windows 98

Как и любая программа, Windows 98 имеет свои сильные и слабые стороны; начнем с сильных.

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

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

В-третьих, поддержка самых разнообразных устройств и механизм Plug and Play.Большинство новых устройств Windows 98 находит сама, автоматически устанавливая для них нужные драйверы, причем этот механизм улучшен по сравнению с предыдущей версией.

В-четвертых, практически полная совместимость сверху вниз. Все программы (за редким исключением), написанные для версий Windows и MS-DOS, прекрасно работают и под управлением Windows 98.

В-пятых, усовершенствованные по сравнению с предыдущей версией механизм многозадачности и защита от сбоев (правда, только для программ, специально написанных для Windows 95 и Windows 98). Одновременно возможно выполнение нескольких программ (пока, например, одна программа производит сложные вычисления, вы можете набирать текст в другой), к тому же крах (зависание) одной программы не вызывает потерю данных во всех остальных в данный момент программах.

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

В-седьмых, встроенные средства работы и интеграции с Internet.

В-восьмых, более эффективная работа на компьютерах с процессорами Pentium и старше.

В-девятых, долгожданные средства цветовой калибровки на уровне операционной системы и поддержка до 7 мониторов одновременно.

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

Как известно, за все надо платить, и за все удобства Windows 98 приходится платить очень большой нагрузкой на аппаратную часть компьютера. Windows 98 (как и ее предшественница Windows 95) весьма требовательно к быстродействию процессора, объему оперативной памяти и свободному месту на диске (причем по сравнению с предыдущей версией эти требования несколько возросли). Таким образом, самый главный недостаток- высокие требования к быстродействию всех без исключения частей компьютера. Если использовать Windows 98 на медленных компьютерах, то из-за постоянных простоев и ожидания работа из приятной превращается в настоящее мучение.

Еще одним минусом Windows 98 является ее неполная многозадачность, особенно для старых программ. И если с распределением ресурсов Windows 98 справляется достаточно успешно, то с защитой дело обстоит все еще не очень хорошо, - если некорректная работа одной из программ приведет к разрушению общих системных ресурсов, то Windows 98, скорее всего, перестанет нормально работать.

Самый главный недостаток Windows 98, связанный с критичностью по времени, не позволяет использовать эту оболочку для обработки поступающих извне сигналов в реальном масштабе времени. В данном случае Windows 98 просто "захлебывается".

Хотя Windows 98 и ориентируется на постоянных пользователей сети Internet, степень ее защиты от несанкционированного доступа (взлома) все же недостаточна.

Наконец, как это ни печально, Windows 98 не лишена ошибок, как, впрочем, и другие программы.

Элементы интерфейса Windows 98

Рабочий стол

После запуска Windows 98 вы попадаете на рабочий стол (Desktop). Здесь обычно располагаются некоторые элементы интерфейса Windows 98:

Мой компьютер(My Computer ) - содержит дерево, условно представляющее все папки компьютера;

Корзина (Recycle Bin ) - позволяет удалять файлы и папки. Если вы перетащите какой-либо файл (папку) на пиктограмму Корзины (Recycle Bin ) (пиктограмма при этом окрасится в синий цвет), то вы удалите его с диска;

Сетевое окружение (Network Neighborhood ) - позволяет просмотреть сетевые ресурсы, если вы подключены к сети;

Портфель(My Briefcase ) - позволяет синхронизировать файлы, обрабатывающиеся сразу на нескольких компьютерах. Пользоваться им или нет - дело ваше;

Internet Explorer - позволяет путешествовать по Internet. Если вы не клиент Internet, данную пиктограмму также можно удалить;

Outlook Express - это своего рода почтовый ящик, куда будет поступать информация, приходящая по электронной почте. Если вы таковой не имеете, то смело помещайтеOutlook Express в Корзину (Recycle Bin ) ;

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

Панель задач

Панель задач (Taskbar) обычно расположена в самом низу экрана. На ней располагаются кнопки всех запущенных в данный момент программ и открытых папок. Чтобы перейти к любой из запущенных задач, достаточно щелкнуть мышью по соответствующей кнопке на панели задач. Если вам неясно, какая задача соответствует кнопке, - задержите на ней на пару секунд мышь.

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

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

Кнопка Пуск и Главное меню

Слева на панели задач располагается кнопка Пуск (Start). Щелчок по этой кнопке вызывает главное меню, которое позволяет запустить любую программу, вызвать справку, найти файл и т.п.

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

Типы окон

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

окно Windows - программы;

окно DOS - программы, запущенной в окне;

вторичное окно Windows - программы (создается непосредственно самой программой).

Окно с сообщением или запросом (создается одной из работающих в данный момент Windows- программ).

Окно раскрытой папки.

Окно Windows - программы. Как правило, содержит все элементы, описанные выше. Заголовок содержит имя программы.

Окно DOS - программы. Из - под Windows можно запустить и программы, предназначенные для работы под управлением DOS. Такая программа может быть запущена в двух режимах - полноэкранном и в окне. Первый режим практически ничем не отличается от выполнения программы под управлением непосредственно DOS. Режим же выполнения в окне позволяет более гибко управлять работой программы. У окна DOS - программы отсутствует строка меню. Все остальные элементы присутствуют. В заголовке располагается имя DOS - программы.

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

Окно сообщений и запросов также генерируется Windows - программами. В них выводится различные предупреждения, сообщения о возникших ситуациях, запросы на различные действия. Как правило, эти окна выводится поверх всех других окон и содержат только заголовок и кнопку Закрыть (Close ) . Отличительной особенностью этих окон является их неизменный размер (т.е. изменить границы окна невозможно).

Активный и неактивные окна

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

Управление окнами

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

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

Начнем со случая, когда окно занимает часть экрана. Слева расположена кнопка Свернуть (Minimize ): она позволяет свернуть окно (если это окно программы или папки, то после свертывания от окна останется кнопка на панели задач; если же это вторичное окно, то от него останется строка заголовка и оно будет помещено в левый нижний угол окна программы). В середине находится кнопка Развернуть (Maximize ) , щелчок по ней позволяет развернуть окно на полный экран (если это вторичное окно, то оно сольется с окном программы). Справа расположена кнопка Закрыть (Close ) , она позволяет закрыть окно.

Если окно развернуть на весь экран. то посередине вместо кнопки Развернуть (Maximize ) находится кнопка Восстановить (Restore ) ; она позволяет восстановить размер окна.

Если вторичное окно свернуто, то слева располагается кнопка Восстановить (Restore ) , а в центре кнопка Развернуть (Maximize ) .

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

Перемещение окна

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

Прокрутка содержимого окна

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

Бывает случаи, когда необходимо прокрутить окно всего на одну строчку (столбец). Тогда нужно воспользоваться кнопками со стрелками, расположенными по концам линейки прокрутки. Щелчок по такой кнопке и осуществляет скроллинг (перемещение) окна на одну строку.

Если же необходимо переместить окно на один экран вверх или вниз (вправо или влево), то вы можете поступить следующим образом. Установите маркер мыши на линейку прокрутки выше или ниже бегунка и щелкните левой кнопкой мыши. При этом произойдет скроллинг на один экран.

Закрытие окна

Чтобы закрыть окно (если это возможно), нужно щелкнуть по кнопке Закрыть (Close ) . Если данная операция допустима (окна программ, папок, вторичные окна, часть окон запроса), то после щелчка окно исчезнет с экрана.

При этом:

Если это было окно программы, то данная программа будет завершена;

Если это было окно папки, то оно исчезнет с экрана, а папка будет закрыта;

Если это было вторичное окно программы, то обработка данного документа будет прекращена;

Если это было сообщение программы, то данное окно исчезнет с экрана;

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

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

При щелчке по кнопке Закрыть (Close ) DOS - программы, запущенной в окне, делается попытка завершить данную программу. Если сделать это корректно не удается, выводится соответствующее предупреждение. В этом случае рекомендуется отменить закрытие окна с потерей данных (щелчок по кнопке Нет (No)), а затем завершить DOS - программу стандартным для нее способом.

Интерфейс программы. Компоненты, используемые в программе

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

Основное с точки зрения внешнего вида свойство кнопки -- Caption .

В надписях кнопок можно предусматривать использование клавиш ускоренного доступа, выделяя для этого один из символов надписи. Перед символом, который должен соответствовать клавише ускоренного доступа, ставится символ амперсанта «&». Этот символ не появляется в надписи, а следующий за ним символ оказывается подчеркнутым. Тогда пользователь может вместо щелчка на кнопке нажать в любой момент клавишу Alt совместно с клавишей выделенного символа.

Например, если в вашем приложении имеется кнопка выполнения какой-то операции, вы можете задать ее свойство Caption равным «&Выполнить». На кнопке эта надпись будет иметь вид «Выполнить». И если пользователь нажмет клавиши Alt-B, то это будет эквивалентно щелчку на кнопке.

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

Свойство Cancel , если его установить в true , определяет, что нажатие пользователем клавиши Esc будет эквивалентно нажатию на данную кнопку. Это свойство целесообразно задавать равным true для кнопок «Отменить» в различных диалоговых окнах, чтобы можно было выйти из диалога, нажав на эту кнопку или нажав клавишу Esc.

Свойство Default , если его установить в true , определяет, что нажатие пользователем клавиши ввода Enter будет эквивалентно нажатию на данную кнопку, даже если данная кнопка в этот момент не находится в фокусе. Правда, если в момент нажатия Enter в фокусе находится другая кнопка, то все-таки сработает именно кнопка в фокусе. Если у нескольких кнопок на форме свойство Default задано равным true , то при нажатии Enter сработает та из них, которая находится раньше в последовательности табуляции.

Еще одно свойство -- ModalResult используется в модальных формах. В обычных приложениях значение этого свойства должно быть равно mrNone .

Из методов, присущих кнопкам, имеет смысл отметить один -- Click . Выполнение этого метода эквивалентно щелчку на кнопке, т.е. вызывает событие кнопки OnClick . Этим можно воспользоваться, чтобы продублировать какими-то другими действиями пользователя щелчок на кнопке. Пусть, например, вы хотите, чтобы при нажатии пользователем клавиши с символом «С» или «с» в любой момент работы с приложением выполнялись операции, предусмотренные в обработчике события OnClick кнопки Buttonl . Поскольку неизвестно, какой компонент будет находиться в фокусе в момент этого события, надо перехватить его на уровне формы. Такой перехват осуществляется, если установить свойство формы KeyPreview в true . Тогда в обработчике события формы OnKeyPresss можно написать оператор

if (key="Y" or key="Z") then Buttonl.Click;

Если пользователь ввел символ «С» или «с», то в результате будет выполнен обработчик щелчка кнопки Buttonl .

Все сказанное выше в равной степени относится и к Button , и к BitBtn . Рассмотрим теперь особенности кнопки с пиктограммой BitBtn . Изображение на этой кнопке задается свойством Glyph . При нажатии кнопки с многоточием в строке свойства Glyph в Инспекторе Объектов вызывается окно. Нажав в нем кнопку Load вы перейдете в обычное окно открытия файла рисунка и можете выбрать файл битовой матрицы.bm р, содержащий желаемое изображение. В частности, с Delphi поставляется большое количество изображений для кнопок. Они расположены в каталоге \lmages\Buttons, а сам каталог Images в Delphi 5 и 4 расположен в каталоге \program files\common files\borland shared, а в других версиях Delphi -- в каталоге \program files\borland\delphi...

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

Файл изображения для кнопки может содержать до четырех изображений пиктограмм размера 16x16. Самое левое соответствует отжатой кнопке. Второе слева соответствует недоступной кнопке, когда ее свойство Enabled равно false . Третье слева изображение используется при нажатии пользователя на кнопку при ее включении. Четвертое слева изображение используется в кнопках с фиксацией SpeedButton , о которых будет сказано позднее, для изображения кнопки в нажатом состоянии. Большинство изображений для кнопок использует две пиктограммы. Число пиктограмм вы можете узнать из свойства кнопки NumGlyphs , которое после загрузки изображения покажет вам число пиктограмм в нем.

Расположение изображения и надписи на кнопке определяется свойствамиMargin , Layout и Spacing . Если свойствоMargin равно -1 (значение по умолчанию), то изображение и надпись размещаются в центре кнопки. При этом положение изображения по отношению к надписи определяется свойством Layout , которое может принимать значения:blGlyphLeft (слева, это значение принято по умолчанию), blGlyphRight (справа), blGlyphTop (вверху), blGlyphBottom (внизу). Если жеMargin > 0, то в зависимости от значения Layout изображение и надпись смещаются к той или иной кромке кнопки, отступая от нее на число пикселей, заданное значениемMargin .

Свойство Spacing задает число пикселей, разделяющих изображение и надпись на поверхности кнопки. По умолчанию Spacing = 4. Если задать Spacing = О, изображение и надпись будут размещены вплотную друг к другу. Если задать Spacing = -1, то текст появится посередине между изображением и краем кнопки.

Еще одно свойство BitBtn -- свойство Kind определяет тип кнопки. По умолчанию значение этого свойства равно bkCustom -- заказная. Но можно установить и множество других предопределенных типов: bkOK , bkCancel , bkHelp , bkYes , bkNo , bkClose , bkAbort , bkRetry , bklgnore , bkAll . В этих типах уже сделаны соответствующие надписи, введены пиктограммы, заданы еще некоторые свойства. Обычно все-таки лучше ими не пользоваться. Во-первых, надписи все равно надо переводить на русский язык. Во-вторых, предопределенные рисунки обычно выбиваются из общего стиля конкретного приложения. И главное -- предопределение некоторых свойств, не учтенных вами, может иногда приводить к странным результатам работы. Уж лучше использовать заказные кнопки и самому устанавливать в них все необходимые свойства.

Компонент Image и некоторые его свойства

Нередко возникает потребность украсить свое приложение каким - то изображениями. Это может быть графическая заставка, являющаяся логотипом вашего приложения. Или это могут быть фотографии сотрудников некоего учреждения при разработке приложения, работающего с базой данных этого учреждения. В первом случае вам потребуется компонент Image , расположенный на странице Additional библиотеки компонентов, во втором - его аналог DBImage , связанный с данными и расположенный на странице Data Controls.

Начнем знакомство с этими компонентами. Откройте новое приложение и перенесите на форму компонент Image . Его свойство, которое может содержать изображение -Picture . Нажмите на кнопку с многоточием около этого свойства или просто сделайте двойной щелчок на Image , и перед вами откроется окно Picture Editor, позволяющее загрузить в свойство Picture какой - нибудь графический файл (кнопка Load), а также сохранить открытый файл под новым именем или новом каталоге. Щелкните на Load, чтобы загрузить графический файл. Перед вами откроется окно Load Picture. По мере перемещения курсора в списке по графическим файлам в правом окне отображаются содержащиеся в них картинки, а над ними - цифры, характеризующие размер картинки. Вы можете найти графические файлы в каталоге Images. В Delphi 5 он обычно расположен в каталоге…\program files\ Common Files\ Borland\ Borland Shared, в Delphi 4 - в …\ program files\ Common Files\ Borland Shared, в Delphi 3 - в …\ program files\ Borland\ Delphi 3, а в Delphi 1 - в каталоге Delphi 1. К сожалению, в Delphi 1 окно загрузки изображения значительно просматривать файлы до их загрузки.

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

Вернемся к рассмотрению свойств компонента Image .

Если установить свойствоAutoSize вtrue , то размер компонента Image будет автоматически подгоняться под размер помещенной в него картинки. Если же свойство AutoSize установлено в false , то изображение может не поместиться в компонент или, наоборот, площадь компонента может оказаться много больше площади изображения.

Графики функций

Интерполяция функций

На практике часто встречается задача: по заданным на плоскости значениям (хi,yi), i= 0,1,…, n построить функцию, либо точно проходящую через эти точки, либо проходящую как можно ближе к этим точкам (рис 6.). Ниже рассмотрены три способа решения этой задачи: интерполяционный многочлен Лагранжа, метод наименьших квадратов и интерполяция кубическими сплайнами.

x

Рис. 6 Задача интерполяции

Интерполяционный многочлен Лагранжа

График функции, определенной интерполяционным многочленом Лагранжа, проходит через все точки (хi i ,уi.):

L(x)= i x -x j (1.1)

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

Для вычисления значений многочлена Лагранжа по уравнению (1.1) можно воспользоваться функций Lagr.

Листинг 1. Функция Лагранжа

function Lagr (n : Byte ; xt : Real ; x , y : Vect ): real ;

var I , j : Byte ; S , P : Real ;

For i :=0 to n do

P := l ;

or j : =0 to n do

if i<>j then P:=P* (xt-x[ j ] ) / (x[i] -x[ j ] ) ;

S:=S+y[i]*P;

end ;

Lagr : = S ;

end ;

В проекте предусмотрена возможность перетаскивания любой точки мышью. Поэтому наряду с традиционными функциями масштабирования используются функции обратного масштабирования и созданы обработчики трех событий onMouseDown, onMouseMove, onMouseUp, В процедуре Image IMouseDown определяется номер Num точки, ближайшей к (X,Y), и поднимается флаг, разрешающий перемещения, -- Drawing:= True.

...

Подобные документы

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

    курсовая работа , добавлен 12.01.2011

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

    дипломная работа , добавлен 13.07.2011

    Основные понятия об операционных системах. Виды современных операционных систем. История развития операционных систем семейства Windows. Характеристики операционных систем семейства Windows. Новые функциональные возможности операционной системы Windows 7.

    курсовая работа , добавлен 18.02.2012

    Эволюция графических пользовательских интерфейсов. Устройство системы X Window и менеджеры окон. Описание рабочего стола и приложения KDE и GNOME. Обзор основных принципов организации интерфейса в системе Windows, описание пакета ее прикладных программ.

    реферат , добавлен 15.02.2012

    Изучение учебника и справочной подсистемы Windows 95/NT, получение навыков работы с "мышью", манипулирование окнами и значками программ и документов, запуска программ в системе Windows 95/NT. Разработка простого приложения для Windows при помощи Delphi.

    контрольная работа , добавлен 15.01.2009

    Разработка визуального интерфейса пользователя, на основе экранных форм среды Delphi и визуальных компонент. Основные типы данных, используемые в программе MD 5 Calc. Однонаправленные хэш-функции. Процесс хэширования MD5, возможности его применения.

    курсовая работа , добавлен 28.08.2012

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

    курсовая работа , добавлен 08.05.2011

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

    курсовая работа , добавлен 10.01.2012

    История интегрированной среды разработки, версии Delphi. Организация библиотеки компонентов. Страница Additional, ряд часто используемых компонентов общего назначения. Исполняемый файл программы "Архиватор текстовых файлов", интерфейс приложения.

    курсовая работа , добавлен 16.05.2017

    Использование языка программирования Delphi для записи программ, представляющих собой последовательность инструкций. Классы и директивы в объектно-ориентированном программировании. Разработка демонстрационной программы. Процесс настройки Windows XP.

Лучшие статьи по теме