Использование модуля
Для того чтобы в программе могли применяться функции и процедуры модуля, программист должен добавить этот модуль к проекту и указать имя модуля в списке используемых модулей (обычно имя модуля программиста помещают в конец сформированного Delphi списка используемых модулей).
В листинге 6.9 приведен вариант программы Поездка на дачу. Процедура обработки события onKeyPress в полях ввода исходных данных обращается к функции IsFloat, которая находится в модуле my_unit.pas, поэтому в списке используемых модулей указано имя модуля my_unit.
Листинг 6.9. Использование функции из модуля программиста.
unit fazenda_; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCTRLs, my_unit; // модуль программиста type TForm1 = class(TForm) Edit1: TEdit; // расстояние Edit2: TEdit; // цена литра бензина Edit3: TEdit; // потребление бензина на 100 км CheckBoxl: TCheckBox; // True – поездка туда и обратно Button1: TButton; // кнопка Вычислить Label4: TLabel; // поле вывода результата расчета Label1: TLabel; Label2: TLabel; Label3: TLabel; procedure EditlKeyPress(Sender: TObject; var Key: Char); procedure Edit2KeyPress(Sender: TObject; var Key: Char); procedure Edit3KeyPress(Sender: TObject; var Key: Char); procedure Button1Click(Sender: TObject); private { Private declarations} public { Public declarations } end; var Form1: TForm1; implementation {$R *.dfm} // нажатие клавиши в поле Расстояние procedure TForml.EditlKeyPress(Sender: TObject; var Key: Char); begin if Key = Char(VK_RETURN) then Edit2.SetFocus // переместить курсор в поле Цена else If not IsFloat(Key,Edit2.Text) then Key: = Chr(O); end; // нажатие клавиши в поле Цена procedure TForm1.Edit2KeyPress(Sender: TObject; var Key: Char); begin if Key = Char(VK_RETURN) then Edit3.SetFocus // переместить курсор в поле Потребление. else If not IsFloat(Key,Edit2.Text) then Key: = Chr(0); end;