Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
текст.doc
Скачиваний:
19
Добавлен:
02.04.2015
Размер:
507.39 Кб
Скачать

4.4. Сохранение проекта

 

При сохранении проекта Delphi создает несколько файлов. Некоторые из них содержат описание проекта в целом, некоторые — описания программ­ных модулей и форм. Если проект еще ни разу не был сохранен, то в ответ на команду сохранения проекта Save Project As (Сохранить проект как), которая находится в меню File (Файл), Delphi сначала запрашивает имя программного модуля (рис. 12), затем имя проекта (рис. 13), причем требует, чтобы эти имена были разными. Здесь следует обратить внимание на то, что вы­полняемому файлу Delphi присваивает имя проекта.

 

Рис. 12. Диалоговое окно сохранения модуля

 

Рис. 13. Диалоговое окно сохранения проекта

 

5. Запуск приложения

 

Запустить приложение можно, не завершая работу с Delphi, для этого надо выбрать команду Run (Выполнить) меню Run.

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

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

После ввода коэффициентов и нажатия кнопки Вычислить программа вычисляет значения корней уравнения (рис. 14).

 

 

 

Рис.14. Пример работы приложения "Решение квадратного уравнения"

 

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

 

6. Структура простой программы Delphi

 

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

Ниже приведен текст главного модуля программы решения квадратного уравнения.

 

Примечание

Главный модуль хранится в файле с расширением dpr. Чтобы увидеть текст главного модуля приложения, надо в меню View (Вид) выбрать командуProject source (Исходный текст проекта).

 

program Root;

uses

Forms, Root_u in 'ROOT_U.PAS' {Form1};

 

{$R*.RES}

begin

Application.Title:='Квадратное уравнение' ;

Application.CreateForm(Tform1,Form1) ;

Application.Run;

end.

 

Начинается главный модуль словом PROGRAM, за которым следует имя программы, которое совпадает с именем проекта. Имя программы задается программистом в момент сохранения проекта, и оно определяет имя созда­ваемого компилятором исполняемого файла программы. Далее, за словом  USES, следуют имена используемых модулей: библиотечного модуля Forms и модуля формы Root_u.

Директива {$R*.RES} указывает компилятору, что нужно использовать файл ресурсов, который содержит описания ресурсов приложения, например, пиктограммы. Звездочка показывает, что имя файла ресурсов такое же, как  и у файла проекта, но с расширением res.

Примечание

Файл ресурсов не является текстовым файлом, и просмотреть его с помощью ре­дактора текста нельзя. Для работы с файлами ресурсов используют специальные программы, например Resource Workshop. Можно использовать также входящую в состав Delphi утилиту ImageEditor, доступ к которой можно получить, выбрав команду Image Editor (Редактор образов) меню Tools (Сервис).

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

Ниже приведен текст модуля формы для программы решения квадратного уравнения.

 

unit  Root_u;

 

interface

 

uses

SysUtils, WinTypes, WinProcs, Messages, Classes, Controls, Forms, Dialogs, StdCtrls;

type

            TForm1 = class(TForm)

                        Edit1:  TEdit;

Edit2:  TEdit;

Edit3:  TEdit;

Button1:  Tbutton;

Label1:  TLabel;

Label2:  TLabel;

Label3:  TLabel;

Label4:  TLabel;

Label5:  TLabel;

Button2:  Tbutton;

Button3:  TButton;

Procedure Button1Click(Sender:  TObject);

 

private

 {  Private declarations }

public

{ Public  declarations }

end;

 

var

            Form1:  Tform1;

implementation

{$R *.DFM}

 

Procedure Tform1.Button1Click(Sender:TObject) ;

var

a,b,с:real; {коэффициенты уравнения }

d:real;             { дискриминант }

xl,x2:real;       {  корни уравнения }

si,s2:string[7 ] ;

code:integer;

 

begin

{ввод исходных данных из полей редактирования }

val(edit1.text,a,code);

val(edit2.text,b,code);

val(edit3.text,c,code);

 

if   a=0

then (вывод сообщения об ошибке }

label1.caption:='Ошибка!'+chr(13)

+'Коэффициент при второй степени' +chr(13)+'неизвестного равен нулю'

 

else begin

{ вычисление корней уравнения }

d:=b*b-4*a*c;

xl:=(-b+sqrt(d))/(2*а);

x2:=(-b-sqrt(d))/(2*a);

 { вывод результата }

 str(xl:7:3,sl);

 str(x2:7:3,s2);

 labell.caption = 'Корни уравнения:' +chr(13)+'xl='+sl

+chr(13)+'x2='+s2;

end;

end;

end.

 

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

Состоит модуль из трех частей: раздела интерфейса, раздела реализации и раздела инициализации.

-          Раздел интерфейса (начинается словом INTERFACE) сообщает компилятору, какая часть модуля является доступной для других модулей программы. Здесь перечислены используемые модулем другие библиотечные модули, описание сформированного Delphi типа Tform1, описание доступных другим модулям переменных.

-          Раздел реализации (начинается словом IMPLEMENTATION) содержит локальные объявления и реализацию процедур и функций, поддержи­вающих работу формы. Начинается раздел директивой {$R *.DFM}, указывающей компилятору, что в раздел реализации надо вставить инструкции установки значений свойств формы, которые находятся в файле с расширением dfm, имя которого совпадает с именем модуля. Файл *.dfm на основе внешнего вида формы гене­рируется средой Delphi. Просмотреть файл DFM можно при помощи редактора текста. За директивой {$R *.DFM} следует описание обработчиков событий формы. Сюда же программист может поместить описание своих процедур и функций, которые могут вызываться из обработчиков событий обычным образом.

-          Раздел инициализации позволяет выполнить инициализацию перемен­ных модуля. Инструкции раздела инициализации располагаются после раздела реализации между BEGIN и END. Если раздел инициализации не содержит инструкций (как в приведенном примере), то слово BEGIN не указывается.

Следует отметить, что значительное количество инструкций в модуль записывает Delphi. Например, Delphi, анализируя действия программиста по созданию формы, формирует описание класса формы. В приведенном при­мере инструкции, набранные программистом, выделены серым фоном. Очевидно, что средой Delphi выполняется значительная часть работы по составлению текста программы.