Реализация методов

Для завершения разработки приложения Калькулятор необходимо добавить программный код в методы обработчиков событий.

Методы, автоматически добавляемые Delphi в приложение, первоначально имеют следующую структуру (на примере обработчика события OnActivate):

procedure TFormCalc.OnCalcActivate(Sender: TObject);

Begin

end;

Шаг 1. Активизация приложения. Метод OnCalcActivate

При запуске приложения Калькулятор необходимо:

· очистить поля ввода и поле результата

· знак операции и знак = должны иметь начальное значение?

· установить курсор в поле первого операнда для ввода числа.

Код метода OnCalcActivate:

procedure TFormCalc.OnCalcActivate(Sender: TObject);

Begin

EditOperand1.Text:=''; // Свойство Text – пустая строка

EditOperand2.Text:='';

EditResult.Text:='';

OperatorLabel.Caption:='?';// Свойство Caption – символ?

ResultLabel.Caption:='?';

EditOperand1.SetFocus; // Установить фокус (курсор) в поле первого

// операнда – EditOperand1

end;

Шаг 2. Ввод данных. Метод Operand1KeyPress

Компонент Edit автоматически осуществляет обработку символов, которые Пользователь набирает в поле ввода. После завершения ввода строка введенных символов сохраняется в свойстве Text компонента. Однако в ряде случаев необходимо разрешить ввод только определенных символов и не обрабатывать остальные.

На примере ввода первого числа рассмотрим, как можно обрабатывать событие Нажатие клавиши (OnKeyPress).

Метод обработки этого события получает кроме значения параметра Sender( источник вызова метода) еще и код нажатой клавиши – параметр Key.

Код метода Operand1KeyPress:

procedure TFormCalc.Operand1KeyPress(Sender: TObject;

var Key: Char);

Begin

Case Key of

'0'..'9', chr(8):; // можно ввести числа 0..9 и удалить предыдущий

// символ (chr(8) – клавиша Backspace)

chr(13): EditOperand2.SetFocus;// Если нажата клавиша ENTER –

// установить курсор в поле

// второго операнда

Else

key:=chr(0); // не обрабатывать нажатие других клавиш

end;

end;

Шаг 3. Вычисления

Код метода BtnAddClick:

procedure TFormCalc.BtnAddClick(Sender: TObject);

Begin

EditResult.Text:= IntToStr(StrToInt(EditOperand1.Text)+

StrToInt(EditOperand2.Text));

OperatorLabel.Caption:= '+';

ResultLabel.Caption:= '=';

EditOperand1.SetFocus;

end;

При нажатии на кнопку (сложить) в поле результата (объект EditResult, свойство Text) отображается сумма операндов.Знак операции (OperatorLabel.Caption) будет отображаться как символ +. Знак завершения операции (ResultLabel.Caption) – символ =.

Остальные методы вычислений подобны методу BtnAddClick. Отличие только в преобразовании строки в число/число в строку в операции деления (метод BtnDivedeClick), так как результат вычисления может быть дробным числом.

Шаг 4. Очистка полей и завершение работы приложения

Код метода очистки полей ввода и поля результата (метод BtnClearClick) полностью совпадает с методом активизации приложения (OnCalcActivate).

Для завершения работы приложения достаточно в методе BtnCloseClick вызвать процедуру Close – закрытие формы.

Шаг 5. Выполнение приложения

Откомпилируйте проект ProjectCalc. Для компиляции выберите из меню Project команду Compile или нажмите комбинацию клавиш Ctrl+F9.

После успешной компиляции для выполнения приложения Калькулятор необходимо выбрать в меню Run команду Run или нажать клавишу F9. На рисунке 5.9 приведено главное окно приложения Калькулятор после выполнения операции сложения.

Рисунок 5.9 – Приложение Калькулятор. Сложение чисел

Не изменяя значения операндов, можно вычислить их разность, произведение и получить результат деления. Достаточно просто щелкнуть по соответствующей кнопке.

Изменить значения операндов, можно набирая новое значение в поле ввода операндов. Для очистки этих полей необходимо щелкнуть по кнопке Очистить.

Завершить работу приложения можно щелчком по кнопке Выход или закрыть окно, щелкнув по кнопке .


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: