Написание программы обработки события нажатия кнопки (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 -Варианты заданий
Контрольные вопросы 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 Все авторские права принадлежат авторам лекционных материалов. Обратная связь с нами...
|