Иллюстрированный самоучитель по Delphi 7 для начинающих

Тестирование компонента

В листинге 16.4 приведен модуль приложения Поездка на дачу. Очевидно, что текст программы значительно меньше первоначального варианта, в котором для ввода данных использовался компонент Edit.

Листинг 16.4. Приложение "Поездка на дачу" тест компонента.

unit fazenda;
interface
uses
Windows, Messages, SysUtils,
Variants, Classes, Graphics, Controls,
Forms, Dialogs, StdCTRLs,
NkEdit; // ссылка на модуль компонента
type
TForm1 = class (TForm)
NkEdit 1: TNkEdit; //расстояние
NkEdit2: TNkEdit; // цена литра бензина
NkEditS: TNkEdit; // потребление бензина на 100 км
CheckBox1: TCheckBox; // True – поездка туда и обратно
Button1: TButton; Label4: TLabel;
Label1: TLabel; Label2: TLabel;
Label3: TLabel;
// кнопка Вычислить
// поле вывода результата расчета
procedure ButtonlClick(Sender: TObject);
procedure NkEditlKeyPress
(Sender: TObject; var Key: Char);
procedure NkEdit2KeyPress
(Sender: TObject; var Key: Char);
procedure NkEditSKeyPress
(Sender: TObject; var Key: Char);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
implementation
{$R *.dfm}
// нажатие клавиши в поле Расстояние
procedure TForm1.NkEdit1KeyPress
(Sender: TObject; var Key: Char);
begin
if Key = Char(VK_RETURN)
then NkEdit2.SetFocus; // переместить курсор в поле Цена
end;
// нажатие клавиши в поле Цена
procedure TForm1.NkEdit2KeyPress
(Sender: TObject; var Key: Char);
begin
if Key = Char(VK_RETURN)
then NkEdit3.SetFocus;
// переместить курсор в поле Потребление
end;
// нажатие клавиши в поле Потребление
procedure TForm1.NkEdit3KeyPress
(Sender: TObject; var Key: Char);
begin
if Key = Char(VK_RETURN)
then Buttonl.SetFocus; //
// сделать активной кнопку Вычислить
end;
// щелчок на кнопке Вычислить
procedure TForml.ButtonlClick(Sender: TObject);
var
rast: real; // расстояние
cena: real; // цена
potr: real; // потребление на 100 км
summ: real; // сумма
mes: string; begin
rast: = StrToFloat(NkEdit1.Text);
cena: = StrToFloat(NkEdit2.Text);
potr: = StrToFloat(NkEdit3.Text);
summ: = rast / 100 * potr * cena;
if CheckBoxl.Checked then sunnm: = summ * 2;
mes: = 'Поездка на дачу';
if CheckBoxl.Checked then mes: = mes + ' и обратно';
mes: = mes + 'обойдется в '
+ FloatToStrF(summ,ffGeneral,4.2) + ' руб.';
Label4.Caption: = mes;
end;
end.
Если Вы заметили ошибку, выделите, пожалуйста, необходимый текст и нажмите CTRL + Enter, чтобы сообщить об этом редактору.