Условный оператор Select Case...End Select
Конструкция Select Case “принимает решение” на основе анализа значения выражения, которое указывается в строке Select Case:
Select Case <Анализируемое_выражение>
Case <Значение1>
<Оператор1.1>
...
<Оператор1.M>
Case <Значение2>
<Оператор2.1>
...
<Оператор2.K>
...
Case <ЗначениеN>
<ОператорN.1>
...
<ОператорN.S>
Case Else
<Оператор1>
...
<ОператорZ>
End Select
Данная конструкция работает следующим образом: будет выполнена та группа операторов, которая стоит после строки caseсо значением, которое приняло анализируемое выражение.
Пример:
В зависимости от значения переменной iPr, строковой переменной strResultприсваиваются различные значения
Select Case iPr
Case 1
strResult = "iPr = 1"
Case 2, 3, 4
strResult = "iPr = 2, 3 или 4"
Case 5 To 9
strResult = "iPr находится в диапазоне от 5 до 9"
Case iPr < 0
strResult = "iPr меньше 0"
Case iPr > 9
strResult = "iPr больше 9"
Case Else
strResult = "iPr равно 0"
End Select
2.Проектирование интерфейса
Запустите Visual Basic. Выберите тип Standart EXE. Поместите на форму элементы управления, как показано на рис. 14.
Сначала необходимо в окне установить рамку (Frame ). Затем на форму вносятся кнопки.
Определите (используя окно Properties (Свойства) свойства каждого объекта, размещенного на форме, пользуясь таблицей. Окно вызывается клавишей F4 или из горизонтального меню View – Properties Window (Вид – Окно свойств).
Таблица 4
Элемент управления | Name | Caption | Text | Enabled |
Форма(Form) | frmCalc | Калькулятор | нет | True |
Рамка(Frame) | frame1 | нет | True | |
Кнопка Пуск (Command Button) | cmdRun | Пуск | нет | True |
Кнопка Выход (Command Button) | cmdExit | Выход | нет | True |
Кнопка = (Command Button) | CmdRezult | = | нет | False |
Кнопка Сброс (Command Button) | cmdCancel | Сброс | нет | False |
Окно ввода выражения (TextBox) | TxtCalc | нет | True | |
Окно вывода результата (TextBox) | TxtRezult | нет | True | |
Кнопка с цифрой 1 (Command Button) | CmdNumber | нет | False |
Слово “нет” в таблице означает, что такого свойства у объекта нет.
Последняя строка этой таблицы соответствует кнопке, которая будет использоваться для ввода цифры “1”. Остальные кнопки можно создать следующим образом: скопируйте созданную кнопку cmdNumber (ctrl-C) и отвечайте «Да» («Yes») на вопрос VB «Вы уже создали кнопку с именем cmdNumber. Хотите ли создать массив фигур?» («You already have a control named ‘cmdNumber’. Do you want to create a control array?»). Повторите копирование 15 раз (нажимайте ctrl-V и протаскивайте копию «на место», см. рис.14).
Посмотрите на имена Ваших кнопок (в окошке свойств). Вы увидите в скобках их номера: 0,1, …, 15 (всего 16 кнопок с одинаковыми свойствами): cmdNumber(0),…,cmdNumber(15).
Кнопкам 0,…,9 заголовки мы присвоим программно. Остальным зададим следующие заголовки и свойства (см. таблицу 5).
Таблица 5
Элемент управления | Name | Caption | Enabled |
Кнопка десятичной точки (Command Button) | сmdNumber(10) | True | |
Кнопка суммирования (Command Button) | сmdNumber(11) | + | True |
Кнопка вычитания (Command Button) | сmdNumber(12) | – | True |
Кнопка умножения (Command Button) | сmdNumber(13) | * | True |
Кнопка деления (Command Button) | сmdNumber(14) | / | True |
Кнопка извлечения квадратного корня (Command Button) | сmdNumber(15) | корень | True |
3.Написание программного кода
Двойными щелчками левой кнопки мыши заходите в окно программныхкодови для каждого объекта записывайте коды (программы, вызываемые событиями – нажатием кнопок).
Начнем с написания кодов для кнопки cmdExit. Двойным щелчком вызовем окно программных кодов и выше процедуры обработки нажатия на эту кнопку (выше строки Private Sub cmdExit_Click( )) в разделе (General) – Declarationsобъявим общие для всех программ переменные:
Dim perv, vtor As String‘perv – для первого числа формулы, ‘vtor - для второго
Dim a As String‘в а хранится знак арифметического действия
Dim zagotovka As String ‘в zagotovka будут конструироваться ‘числа формулы по мере их набора щелчками по кнопкам с цифрами
Dim rezult As Single ‘rezult хранит результат вычисления
Коды, которые нужно записать для кнопки cmdExit:
Private Sub cmdExit_Click( )
End
End Sub
Коды, которые нужно записать для кнопки cmdRun: