Programming: Delphi
Иллюстрированный самоучитель по Delphi 7 для начинающих
Тестирование компонента
После того как компонент
будет добавлен в пакет, необходимо проверить поведение компонента во время разработки
приложения, использующего этот компонент (работоспособность компонента была
проверена раньше, когда он добавлялся в форму приложения динамически, во время
работы программы).
Можно считать, что
компонент работает правильно, если во время разработки приложения удалось поместить
этот компонент в форму разрабатываемого приложения и, используя окно Object
Inspector, установить, значения свойств компонента, причем как новых, так
и унаследованных от родительского класса.
Работоспособность компонента
NkEdit можно проверить, использовав его, например, в приложении Поездка на
дачу, вид формы которого приведен на рис. 16.9.
Рис. 16.9. Форма
приложения Поездка на дачу (поля ввода-редактирования компонента
NkEdit)
Внешне форма разрабатываемого
приложения почти ничем не отличается от формы приложения Поездка на дачу,
рассмотренного в гл. 6. Однако если выбранным компонентом будет поле ввода,
то в окне Object Inspector указано, что текущим компонентом является
компонент класса TNkEdit, a в списке свойств можно увидеть новое (по сравнению
со списком свойств стандартного компонента Edit) свойство — Numb (рис. 16.10).
Рис. 16.10. Свойство
компонента NkEdit отражено в окне Object Inspector
В листинге 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.
Назад | Оглавление | Вперёд
При перепечатке любого материала
с сайта, видимая ссылка на источник www.warayg.narod.ru
и все имена, ссылки авторов обязательны.
© 2005
|