Основи розробки прикладних програм в Delphi 


Мы поможем в написании ваших работ!



ЗНАЕТЕ ЛИ ВЫ?

Основи розробки прикладних програм в Delphi



ВСТУП

Delphi — что это?

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

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

Несколько лет назад рядовому программисту оставалось только мечтать о создании собственных программ, работающих в среде Windows, т. к. единственным средством разработки был Borland C++ for Windows, явно ориентированный на профессионалов, обладающих серьезными знаниями и опытом.

Бурное развитие вычислительной техники, потребность в эффективных средствах разработки программного обеспечения привели к появлению систем программирования, ориентированных на так называемую "быструю разработку", среди которых можно выделить Borland Delphi и Microsoft Visual Basic. В основе систем быстрой разработки (RAD-систем, Rapid Application Development — среда быстрой разработки приложений) лежит технология визуального проектирования и событийного программирования, суть которой заключается в том, что среда разработки берет на себя большую часть рутинной работы, оставляя программисту работу по конструированию диалоговых окон и функций обработки событий. Производительность программиста при использовании RAD-систем -фантастическая!

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

В настоящее время программистам стала доступна очередная версия пакета Delphi - Borland Delphi 7 Studio. Как и предыдущие версии, Borland Delphi 7 Studio позволяет создавать самые различные программы: от простейших однооконных приложений до программ управления распределенными базами. В состав пакета включены разнообразные утилиты, обеспечивающие работу с базами данных, XML-документами, создание справочной системы, решение других задач. Отличительной особенностью седьмой версии является поддержка технологии.NET.

Borland Delphi 7 Studio может работать в среде операционных систем от Windows 98 до Windows XP. Особых требований, по современным меркам, к ресурсам компьютера пакет не предъявляет: процессор должен быть типа Pentium или Celeron с тактовой частотой не ниже 166 МГц (рекомендуется Pentium II 400 МГц), оперативной памяти - 128 Мбайт (рекомендуется 256 Мбайт), достаточное количество свободного дискового пространства (для полной установки версии Enterprise необходимо приблизительно 475 Мбайт).

 

 


№2 – лекційне заняття

ОСНОВИ РОЗРОБКИ ПРИКЛАДНИХ ПРОГРАМ В DELPHI

І НТЕГРОВАНЕ СЕРЕДОВИЩЕ РОЗРОБКИ DELPHI

СТРУКТУРА КОДА МОДУЛЯ

               Структура кода модуля

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

1. Запустите Delphi, если вы еще это не сделали, с помощью меню Windows Пуск | Программы. Если Delphi уже работает и вы уже делали какие-то эксперименты с формой, то откройте новое приложение. Для этого вам надо выполнить команду File | New Application. Ответьте «No» на вопрос Delphi, хотите ли вы сохранить изменения в вашем проекте.

2. Перенесите на пустую форму, которая открылась вам, кнопку Button со страницы Standard палитры компонентов. Для этого выделите пиктограмму кнопки (она шестая слева) и затем щелкните курсором мыши в нужном вам месте формы. На форме появится кнопка, которой Delphi присвоит имя по умолчанию — Button1.

3. Аналогичным образом перенесите на форму с той же страницы Standard палитры компонентов метку Label (она на странице третья слева). В этой метке в процессе выполнения приложения будет появляться текст при нажатии пользователем кнопки. Delphi присвоит ей имя Label1.

4. Разместите компоненты на форме примерно так, как показано на рис. 1 а.

5. Выделите на форме компонент Button1 — кнопку. Перейдите в Инспектор Объектов и измените ее свойство Caption (надпись), которое по умолчанию равно Button1 (имя, которое по умолчанию присвоила этому компоненту Delphi) на «Пуск».

6. Сотрите текст в свойстве Caption метки Label1, чтобы он не высвечивался, пока пользователь не нажмет кнопку приложения. Теперь вам осталось только написать оператор, который заносил бы в свойство Caption метки Label1 нужный вам текст в нужный момент. Этот момент определяется щелчком пользователя на кнопке. При щелчке в кнопке генерируется событие OnClick. Следовательно, обработчик этого события вы и должны написать.

7. Выделите кнопку Button1 на форме, перейдите в Инспектор Объектов, откройте в нем страницу событий (Events), найдите событие кнопки OnClick (оно первое сверху) и сделайте двойной щелчок в окне справа от имени этого события. Это стандартный способ задания обработчиков любых событий. Вы окажетесь в окне Редактора Кода и увидите там текст:

8. procedure TForm1.Button1Click(Sender: TObject);9. begin 10. 11. end

Заголовок этой процедуры складывается из имени класса вашей формы (TForm1), имени компонента (Button1) и имени события без префикса On (Click).

12. Напишите в обработчике оператор задания надписи метки Label1. Этот оператор может иметь вид:

13. Label1.Caption:= 'Это мое приложение Delphi!';

Оператор, который вы написали, присваивает метке строку текста «Это мое приложение Delphi!».

 

Рис. 1 Форма (а) и окно в процессе выполнения (б) вашего приложения а) б)

Если вы работаете с версией старше Delphi 3, написали первый идентификатор оператора — Label1, поставили точку и ненадолго задумались, то вам всплывет подсказка, содержащая список всех свойств и методов метки. Это начал работать Знаток Кода — Code Insight, который стремится подсказать вам свойства и методы компонентов, аргументы функций и их типы, конструкции операторов. Вы можете выбрать из списка нужное ключевое слово, нажать клавишу Enter и выбранное слово (свойство, метод) окажется вписанным в текст.

Этот инструмент очень удобен во многих случаях, когда вы не очень точно помните последовательность перечисления параметров какой-нибудь функции, или когда не уверены в имени какого-то свойства. Но иногда, когда вы хорошо освоитесь с Delphi, эти подсказки, может быть, начнут вас раздражать. Тогда вы можете отключить Знатока Кода, выполнив команду Tools | Editor Options и на странице Code Insight выключив опцию Code Completion. В Delphi 4 аналогичные действия можно сделать командой Tools | Environment Options.

Итак, ваше приложение готово. Можете откомпилировать и выполнить его (команда Run | Run). После недолгой компиляции перед вами появится окно вашего приложения. Нажав в нем кнопку Пуск, вы увидите указанную вами строку текста (рис. 1 б). Можете попробовать различные манипуляции с окном: перемещение его, изменение размеров его рамки курсором мыши, свертывание и развертывание. В заключение закройте приложение, щелкнув на кнопке в его правом верхнем углу.

Теперь посмотрите код программы, который создала с вашей помощью Delphi. Этот код содержится в двух файлах — головном файле программы с расширением .dpr и в файле модуля с расширением .pas. Головной файл .dpr — один на весь проект, а файлов модулей столько, сколько форм вы ввели в свой проект. Добавление в проект новой формы вы можете осуществить командой File | New Form, а удалить форму из проекта можно командой Project | Remove from Project.

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

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

unit Unit1; interface // Открытый интерфейс модуля {Список подключаемых модулей} uses Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls; {Объявление класса формы} type TForm1 = class (TForm) Label1: TLabel; Button1: TButton; procedure Button1Click (Sender: TObject); private // Закрытый раздел класса { Private declarations } {Сюда могут помещаться объявления переменных, функций и процедур, включаемых в класс формы, но не доступных для других модулей} public // Открытый раздел класса { Public declarations } {Сюда могут помещаться объявления переменных, функций и процедур, включаемых в класс формы и доступных для других модулей} end;                                                     var Form1: TForm1; {Сюда могут помещаться объявления типов, констант, переменных, функций и процедур, к которым будет доступ из других модулей, но которые не включаются в класс формы} implementation // Реализация модуля {$R *.DFM} {Сюда могут помещаться предложения uses, объявления типов, констант, переменных, к которым не будет доступа из других модулей. Тут же должны быть реализации всех объявленных в разделе interface функций и процедур, а также могут быть реализации любых дополнительных, не объявленных ранее функций и процедур.} procedure TForm1.Button1Click(Sender: TObject); begin Label1.Caption:= 'Это мое приложение Delphi!'; end;            end.

Модуль начинается с ключевого слова unit, после которого пишется имя модуля. Оно совпадает с именем файла, в которым вы сохранили свой модуль. По умолчанию для первого модуля имя равно Unit1, для второго Unit2 — и т.д.

Текст модуля состоит из двух основных разделов: interfaceоткрытый интерфейс модуля, и implementationреализация модуля. Все, что помещается непосредственно в раздел interface (типы, переменные, константы, функции, процедуры), может быть использовано другими модулями программы. Все, что помещается в раздел implementation — внутреннее дело модуля. Внешние модули не могут видеть типы, переменные, константы, функции и процедуры, размещенные в разделе реализации.

В разделе interface после предложения uses, содержащего список подключаемых библиотечных модулей, вы можете видеть объявление класса вашей формы, подготовленное Delphi. Имя класса вашей формы — TForm1. В класс включены те объекты которые вы разместили на форме — метка Label1 и кнопка Button1. Кроме того в класс включено объявление того обработчика щелчка на кнопке, который вы создали — процедуры Button1Click.

В классе предусмотрено также два раздела: privateзакрытый раздел класса, и publicоткрытый раздел класса. То, что вы или Delphi объявите в разделе public, будет доступно для других классов и модулей. То, что объявлено в разделе private, доступно только в пределах данного модуля.

После завершения объявления класса формы вы можете видеть строки

var Form1: TForm1

Это объявляется переменная Form1 класса TForm1, т.е. объявляется ваша форма как объекта класса TForm1.

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

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

uses Unit2, Unit3;

обеспечит вам доступ ко всем элементам, объявленным в интерфейсе модулей Unit2 и Unit3.

 


№9 – лекційне заняття

Таблица 1. Соответствие компонентов страницы Win 3.1 и новых 32-разрядных компонентов

Компонент Win 3.1 Новый компонент Страница нового компонента
DBLookupList DBLookupListBox Data Controls
DBLookupCombo DBLookupComboBox Data Controls
TabSet TabControl Win32
Outline TreeView Win32
Header HeaderControl Win32
Notebook PageControl Win32
TabbedNoteBook PageControl Win32

№11 лекційне заняття

Страница Standard

Страница Standard содержит ряд часто используемых компонентов общего назначения

Компонент Тип Описание
фрейм Frame Панель с возможностями наследования. Проектируется как отдельное окно. Компонент визуальный.
главное меню MainMenu Позволяет конструировать и создавать полосу главного меню формы и выпадающие меню. Компонент невизуальный.
всплывающее меню PopupMenu Позволяет конструировать и создавать всплывающие контекстные меню, возникающие при нажатии пользователем правой кнопки мыши. Компонент невизуальный.
метка Label Используется для размещения на формах и других контейнерах текста, который не изменяется пользователем. Компонент визуальный.
окно редактирования Edit Используется для ввода пользователем однострочных текстов. Может использоваться для отображения текста. Компонент визуальный.
многострочное окно редактирования Memo Используется для ввода и отображения многострочных текстов. Компонент визуальный.
командная кнопка Button Используется для создания кнопок, которыми пользователь выбирает команды в приложении. Компонент визуальный.
контрольный индикатор с флажком Checkbox Позволяет пользователю включать и выключать различные опции. Компонент визуальный.
радиокнопка RadioButton Предлагают пользователю набор альтернатив, из которых выбирается одна. Набор реализуется требуемым количеством радиокнопок, размещенных в одном контейнере (форме, панели и т.п.). Компонент визуальный.
окно списка ListBox Представляет собой стандартное окно списка Windows, позволяющее пользователю выбирать разделы из списка. Компонент визуальный.
редактируемый описок ComboBox Объединяет функции ListBox и Edit. Пользователь может либо ввести текст, либо выбрать его из списка. Компонент визуальный.
линейка прокрутки Scrollbar Представляет собой стандартную линейку прокрутки Windows и служит для управления положением видимой части форм или компонентов. Компонент визуальный.
групповое окно GroupBox Является контейнером, объединяющим группу связанных органов управления, таких как радиокнопки RadioButton, контрольные индикаторы Checkbox и т.д. Компонент визуальный.
группа радиокнопок RadioGroup Является комбинацией группового окна GroupBox с набором радио кнопок RadioButton; служит специально для создания групп радиокнопок. Можно размещать в компоненте несколько радиокнопок, но никакие другие оргаыы управления не разрешены. Компонент визуальный.
панель Panel Является контейнером для группирования органов управления и меньших контейнеров. Панель можно использовать также для построения полос состояния, инструментальных панелей, палитр инструментов. Компонент визуальный.
список событий ActionList Обеспечивает диспетчеризацию событий компонентов. Компонент невизуальный.

Страница Additional

Страница является дополнением страницы Standard и содержит ряд часто используемых компонентов общего назначения

Компонент Тип Описание
кнопка с графикой BitBtn Используется для создания кнопок, на которых располагается битовая графика (например, кнопка OK с галочкой). Компонент визуальный.
кнопка с фиксацией SpeedButton Используется для создания инструментальных панелей и в других случаях, когда требуется кнопка с фиксацией нажатого состояния. Компонент визуальный.
маскированный ввод MaskEdit Используется для форматирования данных или для ввода символов в соответствии с шаблоном. Компонент визуальный.
таблица строк StringGrid Используется для отображения текстовой информации в таблице из строк и столбцов. Компонент визуальный.
таблица рисунков DrawGrid Используется для отображения в строках и столбцах нетекстовых данных. Компонент визуальный.
изображение Image Используется для отображения графики: пиктограмм, битовых матриц и метафайлов. Компонент визуальный.
формы Shape Используется для рисования фигур: квадратов, кругов и т.п. Компонент визуальный.
рамка Bevel Используется для рисования выступающих или утопленных линий или прямоугольных рамок. Компонент визуальный.
окно с прокруткой ScrollBox Используется для создания зон отображения с прокруткой. Компонент визуальный.
список с флажками CheckListBox Компонент является комбинацией свойств списка ListBox и индикаторов CheckBox в одном компоненте. Компонент визуальный.
разделитель панелей Splitter Используется для создания в приложении панелей с изменяемыми пользователем размерами. Компонент визуальный.
метка с бордюром StaticText Компонент подобен компоненту Label, но обеспечивает дополнительные возможности по заданию стиля бордюра. Компонент визуальный.
инструментальная панель ControlBar Используется для размещения компонентов инструментальной панели. Компонент визуальный.
события приложения ApplicationEvents Перехватывает события на уровне приложения. Компонент невизуальный.
диаграммы и графики Chart Компонент принадлежит к семейству компонентов TChart, которые используются для создания диаграмм и графиков. Компонент визуальный.

Страница Win32

Страница Win32 содержит компоненты общего назначения, позволяющие разрабатывать приложения в стиле Windows 95/98 и NT 4.x. Некоторые из этих компонентов аналогичны имеющимся на странице Win3.1.

Компонент Тип Описание
страница с закладкой TabControl Позволяет организовывать страницы с закладками в стиле Windows 95, которые может выбирать пользователь. Компонент визуальный.
многостраничное окно PageControl Позволяет создавать страницы в стиле Windows 95/98, управляемые закладками или иными органами управления, для экономии места на рабочем столе. Компонент визуальный.
список изображений ImageList Предназначен для работы со списками изображений одинакового размера в меню, инструментальных панелях и т.п. Компонент невизуальный.
окно редактирования в формате RTF RichEdit Представляет собой окно редактирования в стиле Windows 95/98, позволяющее производить выбор цвета и шрифта, поиск текста и многое другое. Компонент визуальный.
ползунок TrackBar Управляющий элемент в виде ползунка в стиле Windows 95/98. Компонент визуальный.
отображение хода процесса ProgressBar Используется для отображения в стиле Windows 95/98 хода процессов, занимающих заметное время. Компонент визуальный.
кнопка-счетчик UpDown Кнопка-счетчик в стиле Windows 95/98 для ввода целых чисел. Компонент визуальный.
«горячие» клавиши HotKey Дает возможность реализовать в приложении поддержку горячих клавиш. Компонент визуальный.
воспроизведение немых клипов Animate Используется для воспроизведения немых клипов AVI, подобных используемым в Windows 95/98 изображениям копирования файлов и т.п. Компонент визуальный.
ввод дат и времени DateTimePicker Ввод дат и времени с выпадающим календарем. Компонент визуальный.
ввод дат MonthCalendar Ввод дат с выбором из календаря. Компонент визуальный.
дерево TreeView Предоставляет возможность просмотра структуры иерархических данных в стиле Windows 95/98. Компонент визуальный.
списки ListView Отображает списки в стиле Windows 95/98. Компонент визуальный.
заголовок HeaderControl Позволяет создавать составные перемещаемые заголовки в стиле Windows 95/98. Компонент визуальный.
полоса состояния StatusBar Полоса состояния программы, при необходимости — на нескольких панелях. Компонент визуальный.
инструментальная панель ToolBar Инструментальная панель для быстрого доступа к часто используемым функциям приложения. Компонент визуальный.
инструментальная перестраиваемая панель CoolBar Контейнер инструментальной панели, размеры которой могут изменяться пользователем. Компонент визуальный.
прокрутка страниц PageScroller Обеспечивает прокрутку больших окон, например, инструментальных панелей. Компонент визуальный.

Страница System

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

Компонент Тип Описание
таймер Timer Используется для запуска процедур, функций и событий в указанные интервалы времени. Компонент невизуальный.
окно для рисования PaintBox Используется для создания на форме некоторой области, в которой можно рисовать. Компонент визуальный.
аудио и видео плеер MediaPlayer Используется для создания панели управления воспроизведением звуковых и видео файлов, а также устройств мультимедиа. Компонент визуальный.
контейнер OLE OLEContainer Используется при создании области клиента для объекта OLE. Компонент визуальный.
диалог с сервером DDE DDEClientConv Используется клиентом DDE для организации диалога с сервером DDE. Компонент невизуальный.
данные, передаваемые серверу DDE DDEClientItem Используется для определения данных клиента, передаваемых в диалоге серверу DDE. Компонент невизуальный.
диалог с клиентом DDE DDEServerConv Компонент используется сервером DDE при проведении диалога с клиентом DDE. Компонент невизуальный.
данные, передаваемые клиенту DDE DDEServerItem Компонент используется для определения данных сервера, передаваемых клиенту DDE в течение диалога. Компонент невизуальный.

Страница QReport

Страница QReport содержит компоненты, используемые при генерации отчетов.

Компонент Тип Описание
отчет QuickRep Используется для введения в приложение средств печати отчетов QuickReport. Компонент невизуальный.
детали QRSubDetail Используется для компоновки в отчет дополнительных данных. Компонент визуальный.
полоса текста QRStringsBand Используется для компоновки в отчет дополнительных текстов. Компонент визуальный.
полоса QRBand Используется для построения отчетов путем размещения на нем печатаемых компонентов. Компонент визуальный.
дочерняя полоса QRChildBand Используется для создания дочерних полос, которые могут содержать другие компоненты QuickRep и полосы. Компонент визуальный.
группировка QRGroup Используется для группировки данных. Компонент невизуальный.
метка QRLabel Используется для размещения текста в отчете. Компонент визуальный.
текст из базы данных QRDBText Представляет собой ориентированный на данные компонент для размещения текста в отчете. Компонент визуальный.
математические выражения QRExpr Позволяет строить и отображать выражения над полями данных и системными величинами (такими, как время и дата).
системные данные QRSysData Используется для отображения системных данных. Компонент визуальный.
многострочный текст QRMemo Используется для размещения в отчете многострочных текстов. Компонент визуальный.
тексты с математическими выражениями QRExprMemo Используется для размещения в отчете текстов с математическими выражениями. Компонент визуальный.
многострочный текст RTF QRRichText Используется для размещения в отчете текста а обогащенном формате RichText. Компонент визуальный.
многострочный текст RTF базы данных QRDBRichText Используется для размещения в отчете текста из базы данных в обогащенном формате RichText. Компонент визуальный.
форма QRShape Используется для рисования в отчете графических форм. Компонент визуальный.
изображение QRImage Используется для печати изображений в отчете. Компонент визуальный.
изображение из базы данных QRDBImage Используется для печати изображений из баз данных в отчете. Компонент визуальный.
составной отчет QRCompositeReport Используется для построения составных отчетов. Компонент визуальный.
предварительный просмотр QRPreview Используется для предварительного просмотра на экране подготовленного к печати отчета. Компонент визуальный.
фильтр текста QRTextFilter Используется для установки фильтра текста. Компонент невизуальный.
разделитель QRCSVFilter Используется для установки разделителя текста. Компонент невизуальный.
фильтр HTML QRHTMLFilter Используется для установки фильтра HTML. Компонент невизуальный.
диаграммы, графики QRChart Используется для печати в отчете диаграмм, построенных на основе баз данных. Компонент визуальный.

Страница Dialogs

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



Поделиться:


Последнее изменение этой страницы: 2021-12-15; просмотров: 72; Нарушение авторского права страницы; Мы поможем в написании вашей работы!

infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 3.137.157.45 (0.027 с.)