Написание процедуры обработки события создания Формы (FormCreate)




Если программист желает, чтобы при появлении панели интерфейса на экране в соответствующих полях находились начальные значения данных, он должен учесть, что при запуске приложения возникает событие - создание Формы (OnCreate). Создадим процедуру обработки этого события, которая занесет начальные значения переменных x, y, z в поля Edit1, Edit2 и Edit3 соответственно, а в поле Memo1 поместит строку Лабораторная работа №1 – Линейный алгоритм. Для этого дважды щелкните мышью на любом свободном месте Формы. На экране появится текст модуля UnLinAlg, в котором Builder C++ автоматически создает заготовку процедуры-обработчика события создания Формы: TForm1->FormCreate(Sender:TObject). Между операторами {и } этой процедуры вставьте операторы, которые выполняют необходимые действия (текст модуля приведен в п.1.2.7).

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

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

 

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

#include "math.h"

 

 

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

void __fastcall TForm1->FormCreate(Sender: TObject);

{

Edit1->Text= "0,4"; // начальное значение X

Edit2->Text= "8,75e-2"; // начальное значение Y

Edit3->Text= "-19,63"; // начальное значение Z

Memo1->Clear(); // очистка Memo1

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

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

}

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

void __fastcall TForm1.Button1Click(Sender: TObject);

{

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

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

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

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

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

a=sqrt(x)-pow(y,3);

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

c=еxp(5*log(b));

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

Memо1->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));

}

 

}

Данные, с которыми работают компоненты 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-12-31 Нарушение авторских прав и Нарушение персональных данных


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