Главная | Обратная связь | Поможем написать вашу работу!
МегаЛекции

Написание программы обработки события нажатия кнопки (ButtonClick)




Поместите на форму кнопку посредством компонента Button, который находится на странице Standard панели компонентов. С помощью инспектора объектов измените заголовок (Caption) компонента Button1 на слово «Выполнить» или другое. Отрегулируйте положение и размер кнопки. После этого два раза щелкните мышью на кнопке: появится заготовка для текста программы c за­головком процедуры-обработчика события - нажатия кнопки:

Procedure TForm1.Button1Click(Sender: TObject);

Заголовки рассматриваемых процедур формируются средой Delphi автоматически (если набрать их вручную - программа работать не будет). Так, имя процедуры TForm1.Button1Click составляется системой из имени формы (Form1), имени компонента (Button) и имени соответствующего события (onClick), но без префикса on. Надо иметь в виду, что при запуске программы на выполнение все функции обработки событий, у которых между begin и end не было написано текста, удаляются автоматически по соответствующему запросу среды Delphi. Поэтому не следует удалять вручную ошибочно созданные обработчики.

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

После запуска программы (например, щелчком мыши по зеленой пиктограмме происходит компиляция, если нет ошибок, компоновка программы и создание единого выполняемого файла с расширением .exe. На экране появляется активная форма программы (рис. 1.3).

Работа с программой осуществляется следующим образом. Введите исходные значения x, y, z. Нажмите (щелкните мышью) кнопку «Выполнить». В окне Memo1 отображается результат. Измените исходные значения x, y, z в окнах Edit и снова нажмите кнопку «Выполнить» - отображаются новые результаты. Завершить работу программы можно путем активизации пункта Program Reset в главном меню Run или кнопку на форме.

На рисунке 1.3 показан интерфейс приложения после ввода исходных данных и нажатия кнопки «Выполнить».

Рис 1.3. Интерфейс приложения после его выполнения

 

В листинге 1.1 представлен текст программы. Для наглядности в этой работе операторы, которые набирает программист, выделены полужирным шрифтом. Остальные операторы вставляются средой Delphi автоматически.

Листинг 1.1.

unit Unit1;

Interface

Uses

Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls;

type TForm1 = class (TForm)

Label1: TLabel;

Label2: TLabel;

Label3: TLabel;

Edit1: TEdit;

Edit2: TEdit;

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:='13.8e-2'; //начальное значение X

Edit2.Text:='1.54'; //начальное значение Y

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

Memo1.Clear; //очистка окна редактора Memo1

end;

{Процедура обработки события нажатия кнопки "Выполнить"}

procedure TForm1.Button1Click(Sender: TObject);

var //объявление локальных переменных

x,y,z,a,b,c,r: extended;

begin

Memo1.Clear; //очистка окна редактора Memo1

{Ввод, преобразование и присвоение исходных данных }

x:=StrToFloat(Edit1.Text); //считывается значение x

y:=StrToFloat(Edit2.Text); //считывается значение y

z:=StrToFloat(Edit3.Text); //считывается значение z

{Вывод заголовка и исходных данных в окно Memo1}

Memo1.Lines.Add('Программирование линейных алгоритмов');

Memo1.Lines.Add('Исходные данные:'); //вывод строки в Memo1

Memo1.Lines.Add('x='+FloatToStrF(x,ffFixed,8,4));

Memo1.Lines.Add('y='+FloatToStrF(y,ffFixed,8,4));

Memo1.Lines.Add('z='+FloatToStrF(z,ffFixed,8,4));

{Вычисления}

a:=exp((x+1)*ln(y))/(exp((1/3)*ln(abs(y-2)))+3); b:=(x+y/2)*exp((-1/sin(z))*ln(x+1));

c:=2*abs(x+y); r:=a+b/c+cos(pi/2);

{Вывод результата r в окно Memo1}

Memo1.Lines.Add('Результат r = '+FloatToStrF(r,ffFixed,8,4)); end; end.

Индивидуальные задания

Выберете свой вариант индивидуального задания. В соответствии с этим установите необходимое количество окон, тексты заголовков на форме, размеры шрифтов, а также типы переменных и функции преобразования при вводе и выводе результатов. Целесообразно сложные выражения рассматривать как совокупность простых выражений, вычисляемых отдельно.

Практическое задание

Запустить среду программирования

Создайте форму

Напишите процедуры обработки событий.

Выполнить компиляцию программы и установить синтаксические ошибки.

Выполнить программу и проверить результат ее работы на контрольном примере.

Сохранить проект. Выйти из среды программирования.

 

Таблица 1 -Варианты заданий

Функция Проверочное значение y(x) при х = 2(или y(x1, х2) при х1 = 2 и х2 = 2)
  5,8496
  -0,6354
  0,1158
  6,027716
  -1,7147
  0,0232
  46,9482
  1,1432
    6,022
  9,6488
  0,5693
  7,5196
  6,3159

 

Контрольные вопросы

1. Каково должно быть свойство ReadOnly компонента Edit, чтобы во время выполнения программы пользователь не мог изменять текст поля ввода?

2. Укажите, в левой или правой колонке вкладки Events Инспектора объектов перечислены имена событий, которые может воспринимать выбранный компонент (объект).

3. Каким образом в Object Pascal создаются комментарии?

4. Из каких разделов состоит программа?

5. Зачем нужен оператор присваивания? Какой вид он имеет?

6. Что может быть записано в правой части оператора присваивания?

7. Что такое переменная?

8. Что такое константа?

9. Какие правила применяются для создания имен переменных?

10. Почему знак умножения всегда выписывают явно (например, пишут a*t, а не at)


Практическая работа №2,

Лабораторная работа №2

Тема. Разработка программ разветвляющихся структур

Цель: научиться пользоваться стандартными компонентами организации переключений (TCheckBox, TRadioGroup и др.). Используя компоненты организации переключений разработать интерфейс и программу для заданного разветвляющегося алгоритма.

Ход работы.

1. Изучить теоретический материал.

2. Выполнить практическое задание.

3. Ответить на контрольные вопросы.

4. Составить отчет.

1. Краткие сведения

Поделиться:





Воспользуйтесь поиском по сайту:



©2015 - 2024 megalektsii.ru Все авторские права принадлежат авторам лекционных материалов. Обратная связь с нами...