Лабораторная работа: Знакомство с компонентами RadioGroup и CheckBox обработка строк типа String в среде Delphi
Задание 1. (Калькулятор). Создайте приложение, обеспечивающее ввод двух целых чисел и выполнение над ними арифметических операций сложения, умножения и вещественного деления. Для выбора операций используйте переключатели, вывод сообщения об ошибке при вводе делителя, равного нулю, выполните в отдельном окне сообщений.
Решение:
1. Сохраните проект в отдельной папке «Калькулятор». Проект назовите Calculator, а файл модуля – mainCalc.pas.
2. Задайте для свойства Form1. Caption значение «Калькулятор». Разместите на форме компоненты (см. рис. 3.1) Edit1,2,3 и Label1,2,3. Задайте свойства Caption для компонентов Label – «операнд1», «операнд2», «Результат». Удалите текст Edit1,2,3 в соответствующих компонентах (используйте свойство Text). Разместите на форме компонент Button1. Кнопку назовите «Вычислить».
3. Разместите на форме компонент RadioGroup 1 из палитры Standard. Задайте для свойства Caption значение «Операция». Затем выберите свойство Items (это свойство задает количество переключателей в группе и надписи около них). В окне String List Editor введите список элементов – символов арифметических операций в столбик: +, -, *, /. Щелкните мышкой по кнопке ОК, завершите формирование списка арифметических операций.
4. В окне Инспектора объектов задайте для свойства RadioGroup . ItemIndex значение 0, чтобы сделать первую кнопку (сложение) выбранной по умолчанию. Задайте размер символов этого компонента, установив значение 14 пунктов.
Примечание: определить во время выполнения, какая кнопка выбрана в данный момент, можно по индексу ItemIndex (0 означает первую кнопку, -1 – ни одна кнопка не выбрана).
Форма будет иметь следующий вид:
Рис. 3.1 Пример формы приложения «Калькулятор»
1. Создайте код обработки события щелчка на кнопке с надписью «Вычислить». Для решения задачи вычисления арифметических операций введите в текст процедуры TForm1. Button1Click следующее описание:
Var a, b: integer; c: real;
Так как в процедуре обработки нажатия кнопки должно быть 4 варианта реализации, по одному для каждой арифметической операции, то следует записать выбор вычисления с помощью оператора Case .
В основном теле процедуры обработки события введите текст остальных операторов следующим образом:
Begin
A:=StrToInt (Edit1. Text);
B:=StrToInt (Edit2. Text);
Edit3. Text :=’ ‘; {очистить от результата предыдущих вычислений}
Case RadioGroup1. ItemIndex of
0: c:= a + b;
1: c:= a – b;
2: c:= a * b;
3: if b=0 then ShowMessage (‘ На ноль делить нельзя !’)
Else c:= a / b;
End;
If RadioGroup. ItemIndex <> 3 then Edit3. Text:= FloatToStrF (c, ffGeneral, 10, 4)
Else if b <> 0 then Edit3. Text:= FloatToStrF (c, ffGeneral, 10, 4);
End;
6. Сохраните и запустите приложение на выполнение.
--> ЧИТАТЬ ПОЛНОСТЬЮ <--