Чтение онлайн

ЖАНРЫ

Delphi. Учимся на примерах

Парижский Сергей Михайлович

Шрифт:

Примечание

Объявление класса и его членов осуществляется в разделе interface программного модуля, а непосредственная реализация свойств и методов — в разделе implementation (структура программного модуля Object Pascal рассматривается ниже).

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

type TForm1 = class(TForm)

private

 { Private declarations }

public

 { Public declarations }

end;

var Form1: TForm1;

Это

означает, что в модуле приложения объявлен класс TForm1, производный от класса TForm, а затем объявлена переменная типа TForm1. Такие переменные — экземпляры класса — называют объектами.Все компоненты Delphi — это объекты, экземпляры того или иного класса.

Свойства класса

Свойства — это именованные интерфейсы доступа к данным объекта. Например, у объекта класса tform, есть свойства height ("высота"), Width ("ширина"), Color ("цвет") и др. Присваивая свойствам значения соответствующего типа, можно изменять внешний вид или характер поведения объекта.

Для доступа к свойствам объекта используется такая же конструкция , как и для доступа к полям записи, например:

var Form1: TForm1;

Form1.Caption:= 'Заголовок формы';

Form1.Font.Color := clWhite;

В данном случае, свойство Font ("шрифт") — это тоже объект класса TFont, у которого есть свойство Color ("цвет").

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

type TForm1 = class(TForm)

 Edit1: TEdit;

private

 { Private declarations }

public

 { Public declarations }

end;

var Form1: TForm1;

Form1.Edit1.Text:= '';

Методы класса

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

Для доступа к методам используется тот же подход, что и для свойств:

Button1.Click; //вызов метода, реализующего нажатие клавиши

Конструкция with-do

Для упрощения программного кода при работе с записями и классами в языке Object Pascal используется конструкция with-do. Например, фрагмент кода

MyCD.Group:= 'Название группы';

MyCD.Year:= 2005;

MyCD.Title:= 'Название альбома';

Form1.Caption:= 'Заголовок формы';

Form1.Font.Color:= clWhite;

можно записать в виде:

with MyCD do begin

 Group:= 'Название группы';

 Year:= 2005;

 Title:= 'Название альбома';

end;

with Form1 do begin

 Caption:= 'Заголовок формы';

 Font.Color: = clWhite;

end;

Еще

один вариант записи этого же фрагмента:

with MyCD, Form1 do begin

 Group:= 'Название группы';

 Year:= 2005;

 Title:= 'Название альбома';

 Caption:= 'Заголовок формы';

 Font.Color:= clWhite;

end;

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

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

Проект Delphi состоит из файлов трех основных типов:

• файл проекта с расширением .dpr;

• программные модули форм — файлы с расширением .pas;

• двоичные данные формы — файлы с расширением .dfm.

Файл .dfm Delphi формирует автоматически на основании значений, присвоенных свойствам формы и размещенных на ней компонентов. Файлы .dpr и .pas также создаются Delphi автоматически, но в них можно вносить изменения вручную. Рассмотрим их структуру.

Файл проекта .dpr

Файл проекта Delphi — это, по сути, главный программный модул не связанный ни с какой формой. В нем указываются ссылки на программные модули приложения и создаются формы. Он имеет следующую с т руктуру:

program имя_программы; //заголовок

//раздел, в котором указываются ссылки на модули форм

uses

 Forms,

 Unit1 in 'Unit1.pas' {Form1}; //главная форма приложения

 //ссылки на остальные формы приложения

 //…

{$R *.res} {директива компилятора о подключении файла ресурсов программы}

begin

 //инициализация приложения как объекта

 Application.Initialize;

 //создание главной формы приложения

 Application.CreateForm(TForm1, Form1);

 //создание остальных форм

 //…

 //запуск приложения

 Application.Run;

end.

Перед словом begin можно добавлять объявления констант, типов и переменных, а между словами begin и end — добавлять собственный программный код.

Файл программного модуля .pas

Файл программного модуля (формы или независимый) имеет следующую структуру:

unit имя_модуля;

//начало интерфейсной части модуля

interface

uses

Поделиться с друзьями: