Инф и Инф технол / ЛЕКЦИЯ 8 Инф ЖД 2 сем
.doc
1 курс (ЭЖД) |
ЛЕКЦИЯ 8ИНТЕГРИРОВАННАЯ СРЕДА Delphi И СОЗДАНИЕ Delphi-ПРИЛОЖНЕИЙ |
2 семестр |
Для начала заметим, что Delphi – это интегрированная среда программирования, входным языком которой является язык программирования Object Pascal.
При программировании на языке Pascal программист сам пишет программу полностью – от и до. Приложения, созданные на языке Pascal, называются консольными. Описание языка Object Pascal, а также способы создания и примеры консольных приложений, разработанных в среде Delphi на языке Object Pascal, были рассмотрены в предыдущей главе. Но главное достоинство среды Delphi – это возможность программировать, манипулируя объектами. Каждая Delphi-программа представляет собой не просто программу, состоящую из одного-двух файлов (как Pascal-программа), а совокупность файлов, объединенных в единый проект.
Объектно-ориентированные приложения, созданные в среде Delphi, имеют вид диалоговых окон. Как известно, диалоговое окно представляет собой прямоугольную область, содержащую такие элементы (компоненты или объекты), как кнопки, поля для ввода данных, надписи и т.д. Поэтому в качестве основных компонентов для реализации Delphi-приложений выбраны компоненты, представленные в следующей таблице:
Компонент |
Класс принадлежности |
Вкладка |
Название компонента |
Form |
TForm |
– |
форма |
Button |
TButton |
Standard |
простая кнопка |
Edit |
TEdit |
Standard |
текстовое поле (окно) |
Label |
TLabel |
Standard |
текстовая метка |
Memo |
TMemo |
Standard |
поле для хранения строк |
RadioButton |
TRadioButton |
Standard |
зависимый переключатель |
RadioGroup |
TRadioGroup |
Standard |
панель для размещения группы зависимых переключателей |
ScrollBar |
TScrollBar |
Standard |
полоса прокрутки |
GroupBox |
TGroupBox |
Standard |
панель с заголовком для размещения группы объектов |
CheckBox |
TCheckBox |
Standard |
выключатель (поле-флажок) |
ComboBox |
TComboBox |
Standard |
поле с раскрывающимся списком |
StringGrid |
TStringGrid |
Additional |
текстовая таблица |
Shape |
TShape |
Additional |
поле для изображения графических примитивов |
MaskEdit |
TMaskEdit |
Additional |
текстовое поле для ввода по шаблону (маске) |
TrackBar |
TTrackBar |
Win32 |
шкала |
UpDown |
TUpDown |
Win32 |
настраиваемое поле для изменения данных |
Timer |
TTimer |
System |
таймер (время и дата) |
Компонент |
Класс принадлежности |
Вкладка |
Название компонента |
OpenDialog |
TOpenDialog |
Dialogs |
диалоговое окно для открытия файла с данными |
SaveDialog |
TSaveDialog |
Dialogs |
диалоговое окно для сохранения файла с результатами |
Как видно из приведенной таблицы, каждый компонент (объект) является представителем определенного класса. Классом называется описание некоторой структуры программы, обладающей набором внутренних переменных – свойств, и функций (процедур), имеющих доступ к свойствам – методам.
Таким образом, класс – это описание, аналогичное описанию типа данных и недоступное для прямого использования в программе. Для получения доступа к свойствам и методам класса, необходимо создать экземпляр класса, называемый также объектом.
Когда программист открывает Delphi, на экране появляется пустая форма (заготовка будущего диалогового окна), не содержащая каких-либо компонентов (см. рис. 8.1). На заднем плане можно видеть текст самого приложения, так называемый исходный текст (или текст модуля программы), содержащий только "шаблон" будущей программы. Этот текст имеет (по умолчанию) имя Unit1 (слово "unit" в переводе с английского в данном случае означает "модуль", хотя в действительности оно переводится как "устройство").
Рис. 8.1. Вид окна со средой программирования Delphi
Щелкнув левой кнопкой мыши по области этого текста, можно сделать его активным и увидеть целиком. Сменить активность формы или ее текста можно, щелкнув правой кнопкой мыши по форме или ее тексту и выбрав пункт View as Text или View as Form. Сменить активность формы и текста модуля приложения можно с помощью пункта View/Toggle Form/Unit или с помощью клавиши [F12]. Сменить активность текста модуля на текст, содержащий проект приложения, можно при помощи пункта меню View/Units или комбинации клавиш [Ctrl]+[F12]. Текст модуля приложения заполняется либо вручную самим пользователем, либо за счет автоматического создания программного кода самой средой программирования Delphi. "Шаблон" текста модуля Delphi-приложения имеет следующий вид:
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls;
type
TForm1 = class(TForm)
private
{ Private declarations }
public
{ Public declarations }
end;
implementation
{$R *.dfm}
end.
Компоненты расположены на специальной панели, называемой Палитрой (или Панелью) компонентов и имеющей несколько вкладок. Так, упомянутые выше компоненты находятся на вкладке Standard. Имеются также вкладки Additional, BDE, Win32, System, Dialogs и т. д.
По мере перенесения на форму соответствующих компонентов происходит автоматическое заполнение исходного текста программы (программного кода). Свойства используемых компонентов можно менять, например, с помощью специального окна, размещенного в левой нижней части экрана и называемого Инспектором объектов (Object Inspector). Имя каждого очередного компонента, с которым он входит в программу, состоит из его названия, которое берется, например, из левого столбца таблицы, приведенной на стр. 43, и порядкового номера. Например, если в программе используются две кнопки и три текстовых окна, их имена будут следующими: Button1, Button2, Edit1, Edit2, Edit3.
Имя самой формы (по умолчанию) – Form1. Это имя может быть изменено с помощью Инспектора Объектов (с помощью свойства Name).
Для разработки Delphi-приложения необходим его "сценарий", который определяет состав и взаимодействие компонентов, размещаемых на форме.
При размещении компонент можно в разумных пределах менять их расположение, размеры, цвет и другие свойства. Это можно делать обычными приемами, используемыми в операционной среде Windows.
Для удобства работы с программой обычно очищают текстовые поля (Edit) от стандартного текста, а надписи на кнопках (Button) меняют на что-нибудь более понятное.
Для компонента Edit это делается, например, следующим образом. В окне Инспектора Объектов в списке свойств (Properties) находится свойство Text, правее которого имеется текст с текущим содержимым. Это содержимое удаляется обычным способом (например, с помощью клавиши [Delete]).
Чтобы изменить надпись на кнопке или у метки, нужно в окне Инспектора Объектов найти свойство Caption (надпись), правее которого имеется текст с надписью, соответствующей текущему названию выбранного компонента. Эту надпись можно изменить на любую другую.
С некоторыми из компонентов можно работать таким образом, что при изменении ряда его свойств (нажата кнопка, в текстовое поле введен текст и т.п.) можно изменять свойства или оперировать методами других компонент (в том числе и данного компонента). Изменение свойства компонента представляет собой некоторое событие, выполнение которого связывается со специальной процедурой, называемой обработчиком события. Для того, чтобы создать эту процедуру и связать ее с компонентом, надо выполнить двойной щелчок левой кнопкой мыши по образу этого компонента на форме. С известной степенью точности можно сказать, что текст модуля Delphi-приложения состоит из последовательности процедур-обработчиков событий.