Студопедия

КАТЕГОРИИ:


Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748)

Структура модуля. Структура файла головной программы приложения Delphi




Структура файла головной программы приложения Delphi

ЯЗЫК ОБЪЕКТНО-ОРИЕНТИРОВАННОГО ПРОЕКТИРОВАНИЯ OBJECT PASCAL

 

Возможности объектно-ориентированного проектирования в Delphi базируют­ся на свойствах языка Object Pascal.

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

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

Типичная головная программа приложения имеет вид:

program Projectl;

uses

Forms,

Unit1 in 'Unit1.pas' {Form1},

Unit2 in 'Unit2,pas' {Form2};

{$R *.RES}

{Здесь вы можете поместить описания каких-то констант, переменных, функций, процедур. Все это будет доступно только в пределах данного файла}

begin

Application.Initialize;

Application.CreateForm(Tform1, Form1);

Application.CreateForm(TForm2, Form2);

Application.Run;

end.

Начинается программа с ключевого слова program, после которого пишется имя программы. Оно совпадает с именем файла, в которым вы сохранили свой про­ект. Это же имя присваивается выполняемому файлу приложения. По умолчанию это имя Project1.

После заголовка в тексте программы располагается предложение uses. В этом предложении перечисляются модули, загружаемые программой. Первый модуль Forms — системный. А следующие — модули разработанных вами форм. Данный пример подразумевает, что вы создали в проекте две формы с именами Form1 и Form2 в модулях с именами Unit1 и Unit2. Помещенные в фигурные скобки на­звания форм — это комментарии.

Следующая строка текста — {$R *.BES} представляет собой директиву ком­пилятора. Затем после ключевого слова begin и до последнего завершающего программу оператора end с точкой (end.) записано тело программы.

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

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

 

 

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

unit Unitl;

interface // Открытый интерфейс модуля

(Список подключаемых модулей) uses

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

{Объявление класса формы} type

TForml = class(TForm) private // Закрытый раздел класса { Private declarations }

{Сюда могут помещаться объявления переменных, функций и процедур, включаемых в класс формы, но не доступных для других модулей}

public // Открытый раздел класса { Public declarations }

{Сюда могут помещаться объявления переменных, функций и процедур, включаемых в класс формы и доступных для других модулей)

end;

var

Forml: TForml;

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

implementation // Реализация модуля {$R *.DFM}

{Сюда могут помещаться предложения uses, объявления типов, констант, переменных, к которым не будет доступа из других модулей. Тут же должны быть реализации всех объявленных в разделе interface функций и процедур, а также могут быть реализации любых дополнительных, не объявленных ранее функций и процедур}

end.

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

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

В разделе interface после предложения uses, содержащего список подключае­мых модулей, вы можете видеть заготовку объявления класса вашей формы, под­готовленную Delphi. Имя класса вашей формы — TForml. Класс содержит два раз­дела: privateзакрытый раздел класса, и publicоткрытый раздел класса. То, что вы или Delphi объявите в разделе public, будет доступно для других клас­сов и модулей. То, что объявлено в разделе private, доступно только в пределах данного модуля.

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

var

Forml: TForml;

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

Затем следует пока пустой раздел реализации implementation, в котором со­держится только директива компилятора. Следите за тем, чтобы случайно не стереть эту директиву.

В модуль вы можете ввести еще два раздела, кроме interface и implementati­on: разделы initialization и finalization.

 




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


Дата добавления: 2015-03-29; Просмотров: 1042; Нарушение авторских прав?; Мы поможем в написании вашей работы!


Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет



studopedia.su - Студопедия (2013 - 2024) год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! Последнее добавление




Генерация страницы за: 0.009 сек.