Написание процедуры обработки события нажатия кнопки Button1 (Button1Click)




Поместим на Форму кнопку, нажатие которой приведет к вычислению выражения. Выберите в Палитре Компонентов на странице Standart пиктограмму компонента Button. В свойстве Caption Инспектора Объектов замените надпись на кнопке Button1 на Вычислить. В свойстве Font подберите шрифт. Отрегулируйте положение и размер кнопки. Затем дважды щелкните “мышью” на кнопке, после чего курсор установится в тексте процедуры-обработчика события нажатия кнопки Button1: Procedure TForm1.Button1Click(Sender:TObject). Внимательно наберите операторы этой процедуры, используя текст модуля UnLinAlg.

 

Текст модуля UnLinAlg

Unit UnLinAlg;

 

Interface

 

Uses

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

StdCtrls;

 

Type

TForm1 = class(TForm)

Label1: TLabel;

Edit1: TEdit;

Label2: TLabel;

Edit2: TEdit;

Label3: TLabel;

Edit3: TEdit;

Label4: TLabel;

Memo1: TMemo;

Button1: TButton;

procedure FormCreate(Sender: TObject);

procedure Button1Click(Sender: TObject);

private

{ Private declarations }

public

{ Public declarations }

end;

 

Var

Form1: TForm1;

 

Implementation

 

{$R *.DFM}

// Процедура обработки события создания Формы:

procedure TForm1.FormCreate(Sender: TObject);

Begin

Edit1.Text:= '0.4'; // начальное значение X

Edit2.Text:= '8.75e-2'; // начальное значение Y

Edit3.Text:= '-19.63'; // начальное значение Z

Memo1.Clear; // очистка Memo1

// Вывод строки в Memo1:

Memo1.Lines.Add('Лабораторная работа №1 - Линейный алгоритм');

end;

// Процедура обработки события нажатия кнопки Button1:

procedure TForm1.Button1Click(Sender: TObject);

Var

x,y,z,a,b,c,u: extended; // объявление локальных переменных

Begin

x:=StrToFloat(Edit1.Text); // X присваивается содержимое Edit1

y:=StrToFloat(Edit2.Text); // Y присваивается содержимое Edit2

z:=StrToFloat(Edit3.Text); // Z присваивается содержимое Edit3

// Вычисляется выражение

a:=sqrt(x)-y*y*y;

b:=sin(a)/cos(a);

c:=Exp(5*Ln(b));

u:=c+exp(y/z)*sin(z*z);

Memo1.Lines.Add(' X = '+Edit1.Text+' Y = '+Edit2.Text+

' Z = '+Edit3.Text); // контрольный вывод X, Y, Z в Memo1

// Вывод результата в Memo1:

Memo1.Lines.Add(' U = '+FloatToStrF(u,ffFixed,8,3));

end;

 

End.

Данные, с которыми работают компоненты Edit и Memo, имеют тип String. Поэтому в процедуре TForm1.Button1Click при присваивании содержимого полей Edit1,Edit2,Edit3 переменным X,Y,Z c помощью функции StrToFloat осуществляется преобразование данных типа String в действительные значения с плавающей точкой типа Extended. Если необходимо работать с данными целого типа, используется функция StrToInt.

При выводе данных в Memo1 используется метод Add свойства Lines, причем для преобразования данных из действительного значения в строковое и управления формой представления выводимого результата используется функция FloatToStrF.

 

Работа с приложением

Для запуска созданного приложения нажмите пиктограмму главного меню или клавишу F9. При этом происходит компиляция модулей и, если нет ошибок, компоновка проекта и создание выполняемого файла PrLinAlg.exe. На экране появляется панель интерфейса приложения (рис.1.2).

Щелкните “мышью” на кнопке “ Вычислить ” и в поле Memo1 появляется результат. Измените исходные значения x, y, z в полях Edit и снова нажмите кнопку ” Вычислить ”. Убедитесь, что в поле Memo1 отображаются новые результаты. Завершить работу приложения можно нажатием кнопки в правом верхнем углу панели интерфейса.

В случае нештатного функционирования приложения восстановить первоначальный режим работы с проектом можно путем выбора в меню Run опции ProgramReset или нажать клавиши Ctrl+F2.



Поделиться:




Поиск по сайту

©2015-2024 poisk-ru.ru
Все права принадлежать их авторам. Данный сайт не претендует на авторства, а предоставляет бесплатное использование.
Дата создания страницы: 2022-09-22 Нарушение авторских прав и Нарушение персональных данных


Поиск по сайту: