Смекни!
smekni.com

Системные события (стр. 2 из 2)

procedureVal(S; varV; varCode: Integer), где s – строковое представление числа, v – параметр, через которое процедура возвращает число целого или вещественного типа, Code – если строка s не является представлением числа, то параметр Code содержит номер ошибочного символа.

Итак, в обработчике события OnClick кнопки ExecuteBtn введем следующую последовательность операторов:

procedure TForm1.Button1Click(Sender: TObject);

var Angle_degree, Angle_radian: real;

Error: Integer;

begin

val(DegreeEdt.text, Angle_degree, Error);

if Error = 0 Then Begin

Angle_radian:= Angle_degree*Pi/180;

RadianEdt.text:=FloatToStr(Angle_Radian);

End

Else Begin

Application.MessageBox(‘Ошибкапривводеградусноймерыугла', 'Ошибка',MB_OK);

DegreeEdt.text:='0';

RadianEdt.text:='0';

End;

End;

Поясним операторы обработчика события OnClick.

Первый оператор преобразует введенную в строковом формате градусную меру угла в вещественное число.

Если параметр Error равен нулю, то ошибок при введении числа нет. В этом случае получаем радианную меру угла, функция FloatToStr преобразует вещественное число в строку.

В противном случае воспользуемся методом объекта Application для отображения диалогового окна об ошибке, и восстановим нулевые значения в компонентах DegreeEdt и RadianEdt.

Сохраните изменения, внесенные в проект. Запустите приложение.

Создайте обработчик события onKeyDown компонента DegreeEdt:

If key = 13 then ExecuteBtn.click;

Задания для самостоятельного выполнения

1. Написать программу для подсчета количества полных дней, прошедших с начала года, если сейчас год Y, месяц M, день D (Y, M и D вводятся пользователем). Кнопка «Подсчитать» должна быть расположена в правом нижнем углу формы на расстоянии 5 пикселей от ее края (необходимо создать обработчик события, который при изменении размеров формы сохраняет местоположение кнопки). Осуществите проверку корректности ввода.

2. Напишите программу для расчета платежной ведомости за неделю в фирме «Весна». Форма должна содержать 2 окна редактирования: одно – для ввода количества отработанных часов, другое – для ввода стоимости одного часа. Программа должна вычислять и показывать заработную плату за неделю. Каждый час отработанный сверхурочно выше нормы в 37,5 часов оплачивается по ставке, превышающей обычную в 1,5 раза. Кроме того, добавьте проверку корректности ввода данных (исходные данные – положительные числа, количество отработанных часов не должно превышать максимально возможного).

3. Написать программу для решения квадратного уравнения. Осуществите проверку корректности ввода.

4. Напишите программу «Вопрос работодателя», которая выполняет следующие действия:

· Первоначально форма имеет следующий вид (рис. 1).

· Кнопка «Да» имеет подсказку ‘Нажми сюда’. При нажатии на кнопку «Да» приложении закрывается, выводя сообщение «Мы так и думали!».

·

При попытке нажатия на кнопку «Нет» эта кнопка перемещается по форме в произвольном направлении (рис. 2).

Содержание отчета

  1. Конспект теоретической части
  2. Работающие программы на ЭВМ
  3. Коды программ с пояснениями в тетради
  4. Файлы проекта и исполняемые файлы в отдельных папках.

Критерии оценки

Первая оценка – конспект – 4 балла, пример приложения – 1 балл.

Вторая оценка – задание для самостоятельного выполнения № 1

Третья оценка – задание для самостоятельного выполнения № 2

Четвертая оценка – задание для самостоятельного выполнения № 3

Пятая оценка – задание для самостоятельного выполнения № 4