Заглянем в свойства меток. Мы видим, что Visual Basic по обыкновению дал каждой метке совпадающие имя и надпись (Label1, Label2, Label3). Имена менять мы не станем затрудняться, потому что в программе они никак участвовать не будут, а надписи, конечно, переменим на Первое число, Второе число, Результат, да и шрифт, пожалуй, увеличим.
Нам остается поместить на форму горизонтальную линию. Для этого найдем в окне Toolbox элемент управления Line (линия) и проведем линию на форме. Чтобы она была потолще, изменим в окне свойств свойство линии BorderWidth.
Итак, проектирование первой версии калькулятора закончено! Теперь калькулятор выглядит так, как задано. Можно приступать к программированию.
Программируем
Запустим проект. Введем в верхнее текстовое поле число 3, а в среднее введем 2. Щелкнем по кнопке сложения. Ничего не произошло. Естественно. Ведь никакой процедуры мы для кнопки не написали. Завершим работу проекта. Двойным щелчком по кнопке сложения откроем окно кода и попытаемся выдумать, что же там написать. Рассуждать будем так: 3 и 2 — не что иное, как значения свойства Text текстовых полей Число1 и Число2. По-другому, это Число1.Text и Число2.Text. Нам нужно, чтобы Результат.Text равнялся их сумме. Что если написать такой оператор:
Результат.Text = Число1.Text + Число2.Text
Сказано — сделано. Получаем:
Private Sub Кл_сложения_Click()
Результат.Text = Число1.Text + Число2.Text
End Sub
Запускаем проект. Вводим 3 и 2. Щелкаем по кнопке сложения. Результат есть. Но не совсем тот, что мы ожидали. Вместо 5 получилось 32. В чем причина? Дело в том, что Visual Basic привык считать знак + по отношению к содержимому текстовых полей не знаком сложения, а знаком "соединения". Проверьте. Вместо 3 и 2 введите Коро и бочка, в результате получится Коробочка. Недаром текстовые поля называются текстовыми, а не числовыми. То, что мы назвали их Число1 и Число2, делу никак не помогло, потому что Visual Basic не обращает внимания на смысл имен, для него имена — просто бессмысленные сочетания символов.
Что делать? Надо приказать Visual Basic обращаться в данном случае с содержимым текстовых полей не как с текстом, а как с числами. Для этого достаточно записывать их не в таком виде — Число1.Text и Число2.Text, а в таком — Val(Число1.Text) и Val(Число2.Text). Здесь Val — сокращение от Value — величина, численное значение. Теперь наш оператор будет выглядеть так:
Результат.Text = Val(Число1.Text) + Val(Число2.Text)
Кстати, после ввода открывающей скобки Visual Basic услужливо предложит подсказку на тему о том, что должно быть в скобках. Со временем вы научитесь эту подсказку понимать.
Запускаем проект. Вводим два любых целых числа и убеждаемся, что все складывается правильно.
Аналогично программируем три остальные кнопки. Вот как будет выглядеть после этого окно кода:
Private Sub Кл_сложения_Click()
Результат.Text = Val(Число1.Text) + Val(Число2.Text)
End Sub
_____
Private Sub Кл_вычитания_Click()
Результат.Text = Val(Число1.Text) — Val(Число2.Text)
End Sub
_____
Private Sub Кл_умножения_Click()
Результат.Text = Val(Число1.Text) * Val(Число2.Text)
End Sub
_____
Private Sub Кл_деления_Click()
Результат.Text = Val(Число1.Text) / Val(Число2.Text)
End Sub
Пояснения: В языках программирования умножение обозначается звездочкой *, а деление — косой чертой /.
При вводе в текстовые поля десятичных дробей вместо запятой ставьте точку. Результат же будет выводиться с запятой.
Итак, калькулятор готов!
Предостережения: Наш калькулятор пока не защищен от ввода вместо чисел всякой ерунды (например, текста КУ-КУ), от ввода слишком больших или слишком маленьких чисел, от деления на ноль. В таких случаях Visual Basic дает неправильный или неудобочитаемый результат или сообщение об ошибке. Защиту вы найдете в 0.
Задание 1: Создайте кнопку возведения в квадрат числа из верхнего текстового поля.
Указание: Возвести в квадрат — значит умножить само на себя.
Задание 2: На нашем калькуляторе не хватает кнопки СБРОС, которая опустошала бы все три текстовых поля. Создайте ее.
Указание: Для этого вам понадобятся операторы типа Число1.Text = В программах текстовое содержимое текстовых полей должно указываться в кавычках. В данном случае у нас внутри кавычек пусто, что и требовалось.
Кое-какие другие свойства объектов
Начнем в режиме проектирования украшать и усовершенствовать наш калькулятор. Для этого рассмотрим некоторые другие свойства объектов, из которых он сконструирован. Многие из этих свойств имеются у большинства объектов, некоторые — только у одного-двух. Прочтя материал об очередном свойстве, вам надлежит тут же проверить, как его различные значения влияют на вид и поведение формы, кнопок, текстовых полей и меток в режиме [run].