Приложение⇒ проект Check1_CheckedChanged
Занятие 22.1 Множественный выбор
Иногда программам необходимо принимать множество решений одно за другим.
Например, нужно проверить, установлен ли флажок, выбрана ли позиции переключателя, затем сравнить два числа, и проверить, оставил ли пользователь пустым текстовое поле. Все это нужно сделать в одной программе.
Решение проблемы ⇒в коде можно использовать столько операторов If...Then, сколько нужно. Как и другие операторы, они выполняются в том порядке, в котором встречаются в коде.
Задание. Требуется создать проект, демонстрирующий использование нескольких операторов If...Then.
Предположим, что в программе есть флажок с надписью Тревога.
Если флажок установлен то:
- программа изменяет цвет фона формы на красный,
- текст в текстовом поле на "Пожар",
- и выводит окно сообщения с текстом "Опасность! Опасность!".
Все это можно сделать с помощью трех операторов If...Then.
Каждый из этих операторов будет проверять, установлен ли флажок:
если Да (true), то будет выполняться соответствующий код.
Алгоритм проекта. Интерфейс проекта.
Программный код проекта
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
If CheckBox1.Checked = True Then 'или If CheckBox1.Checked True Then
Me.BackColor = Color.Red
End If
If CheckBox1.Checked = True Then
TextBox1.Text = "пожар"
End If
If CheckBox1.Checked = True Then
MessageBox.Show("Опасность! Опасность!")
End If
End Sub
Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
TextBox1.Text = ""
Me.BackColor = Color.White
End Sub
II. Или применяем полную форму оператора ветвления If...Then..Else.
Алгоритм проекта
Интерфейс проекта
Программный код проекта
Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
TextBox1.Text = ""
Me.BackColor = Color.White
End Sub
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
If CheckBox1.Checked = True Then
Me.BackColor = Color.Red
TextBox1.Text = "пожар"
MessageBox.Show("Опасность! Опасность!", "тревога!")
Else
Me.BackColor = Color.Maroon
Text1.Text = ""
MessageBox.Show("переключатель не включен", "тревога!")
End If
End Sub
Или пишем программный код для обработки события - установки флажка
Private Sub Check1_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Check1.CheckedChanged
If Check1.Checked Then
Me.BackColor = Color.Red
Text1.Text = "сигнал тревоги!"
MessageBox("тревога!", "тревога")
Else
Me.BackColor = Color.Maroon
Text1.Text = ""
MessageBox("переключатель не включен", "тревога")
End If
End Sub
Задания
Задание 1
В компьютер вводятся три числа.
Выяснить какое из трех чисел меньше.
Задание 2
Компьютер спрашивает пользователя, как его зовут, а затем приветствует его в соответствии с именем: Диму – «Привет», Олега – «Здорово», Джона – «Hi», а остальных – «Здравствуйте». Для Олега, кроме этого, он красит форму в зеленый цвет.
Задание 3
В компьютер вводятся длины трех отрезков. Компьютер должен ответить на вопрос, можно или нельзя из этих отрезков образовать треугольник.
Указание: Для этого каждый отрезок должен быть меньше суммы длин двух других отрезков.