Приложение⇒Gadalka2.rar
vozract.rar
foto_case.rar
calc_variant 2
Занятие 23.1 Реализация выбора ⇒select_case_n
Пример 1. Разработка проекта "Гадалка"
Интерфейс проекта
Private Sub Button1_Click(ByVal eventSender As System.Object, ByVal eventArgs As System.EventArgs) Handles Button1.Click
Randomize() 'активизация датчика случайных чисел
Label2.Text = Str(CShort(Rnd() * 150)) ' Rnd() * 150 - генерирование случайных чисел в указанном диапазоне
' CShort(Rnd() * 150)⇒ преобразует выражение к типу Short с округлением
End Sub
Private Sub Button2_Click(ByVal eventSender As System.Object, ByVal eventArgs As System.EventArgs) Handles Button2.Click
Dim n As Integer
n = Val(Label2.Text) Mod 6 'остаток от деления нацело
Label3.Text = "значение n: " & Str(n)
Select Case n |
End Sub
Private Sub Button3_Click(ByVal eventSender As System.Object, ByVal eventArgs As System.EventArgs) Handles Button3.Click
End
End Sub
Private Sub Label2_TextChanged(ByVal eventSender As System.Object, ByVal eventArgs As System.EventArgs) Handles Label2.TextChanged
Label4.Text = ""
End Sub
Пример 2. Разработка проекта "Ваш возраст"
Интерфейс проекта
Программный код
Private Sub Button1_Click(...) Handles Button1.Click
Dim n, kod As Short
Dim m As String
n = Val(Text1.Text)
kod = 0
Label3.Text = ""
Select Case n
Case 1 To 14 : m = "детский" : Image1.Visible = True
Case 15 To 30 : m = "молодой" : Image2.Visible = True
Case 31 To 45 : m = "средний" : Image3.Visible = True
Case 46 To 60 : m = "в возрасте" : Image4.Visible = True
Case 61 To 120 : m = "пожилой" : Image5.Visible = True
Case Is > 120 : PictureBox1.Visible = True
End Select
Label3.Text = m
m = ""
If (n < 0) Or (n = 0) Then
MessageBox.Show("Вы должны ввести значение больше нуля", "ветвление")
Label3.Text = ""
Text1.Focus()
ElseIf n > 120 Then
kod = MsgBox("Вы убеждены что этот человек - старожил?", 64 + 4, " ветвление")
End If
If kod = 6 Then
m = "старожил? я так не думаю"
Label3.Text = m
m = ""
ElseIf kod = 7 Then
m = "правильно, он - молодец!!!"
Label3.Text = m
m = ""
End If
End Sub
Private Sub Button2_Click(....) Handles Button2.Click
Label3.Text = ""
Text1.Text = ""
Text1.Focus()
PictureBox1.Visible = False
PictureBox2.Visible = False
PictureBox3.Visible = False
PictureBox4.Visible = False
PictureBox5.Visible = False
PictureBox6.Visible = False
End Sub
Private Sub Button3_Click(...) HandlesButton3.Click
End
End Sub
Private Sub Form1_Load(.....) Handles MyBase.Load
Text1.Focus()
PictureBox1.Visible = False
PictureBox2.Visible = False
PictureBox3.Visible = False
PictureBox4.Visible = False
PictureBox5.Visible = False
PictureBox6.Visible = False
End Sub
Пример 3. Разработка проекта "Фото- галерея"
Интерфейс проекта
Напишите программный код для списка, который обрабатывает событие SelectedIndexChanged (выбор элемента из списка).
Private Sub ListBox1_SelectedIndexChanged(...) Handles ListBox1.SelectedIndexChanged
Select Case ListBox1.SelectedIndex
Case 0
PictureBox1.Image = ImageList1.Images(0)
PictureBox2.Image = ImageList1.Images(1)
PictureBox3.Image = ImageList1.Images(2)
PictureBox4.Image = ImageList1.Images(15)
Case 1
PictureBox1.Image = ImageList1.Images(3)
PictureBox2.Image = ImageList1.Images(4)
PictureBox3.Image = ImageList1.Images(5)
PictureBox4.Image = ImageList1.Images(6)
Case 2
PictureBox1.Image = ImageList1.Images(7)
PictureBox2.Image = ImageList1.Images(8)
PictureBox3.Image = ImageList1.Images(9)
PictureBox4.Image = ImageList1.Images(10)
Case 3
PictureBox1.Image = ImageList1.Images(11)
PictureBox2.Image = ImageList1.Images(12)
PictureBox3.Image = ImageList1.Images(13)
PictureBox4.Image = ImageList1.Images(14)
End Select
End Sub
Пример 4. Разработка проекта "Калькулятор" с использованием оператора Select Case. (источник - Internet)
Интерфейс проекта.
Программный код
Public x As Short 'для запоминания выбранной операции: сложение, вычитание, умножение, деление
Public a As Single
Public b As Single
Public c As Single
' событие Click на кнопках Button1...Button10 - формирования вводимого аргумента
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
TextBox1.Text = TextBox1.Text & "1"
End Sub
Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
TextBox1.Text = TextBox1.Text & "2"
End Sub
Private Sub Button3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button3.Click
TextBox1.Text = TextBox1.Text & "3"
End Sub
Private Sub Button4_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button4.Click
TextBox1.Text = TextBox1.Text & "4"
End Sub
Private Sub Button5_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button5.Click
TextBox1.Text = TextBox1.Text & "5"
End Sub
Private Sub Button6_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button6.Click
TextBox1.Text = TextBox1.Text & "6"
End Sub
Private Sub Button7_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button7.Click
TextBox1.Text = TextBox1.Text & "7"
End Sub
Private Sub Button8_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button8.Click
TextBox1.Text = TextBox1.Text & "8"
End Sub
Private Sub Button9_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button9.Click
TextBox1.Text = TextBox1.Text & "9"
End Sub
Private Sub Button10_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button10.Click
TextBox1.Text = TextBox1.Text & "0"
End Sub
'событие Click на кнопках Button11...Button14:
Private Sub Button11_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button11.Click
x = 1 'запоминание вида операции
a = Val(TextBox1.Text) 'запоминание первого вводимого аргумента
TextBox1.Text = "" 'освобождение текстового поля для формирования второго аргумента
End Sub
Private Sub Button12_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button12.Click
x = 2
a = Val(TextBox1.Text)
TextBox1.Text = ""
End Sub
Private Sub Button13_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button13.Click
x = 3
a = Val(TextBox1.Text)
TextBox1.Text = ""
End Sub
Private Sub Button14_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button14.Click
x = 4
a = Val(TextBox1.Text)
TextBox1.Text = ""
End Sub
' после выбора операции вводим в текстовое поле значение второго аргумента и выбираем кнопку " = ", после чего:
Private Sub Button15_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button15.Click
b = Val(TextBox1.Text) 'запоминание значения второго аргумента
Select Case x 'Оператор Select Case используется тогда, когда на основе значения
'одной переменной или свойства производится выбор из трех или более ветвей алгоритма.
Case 1 : c = a + b
Case 2 : c = a - b
Case 3 : c = a * b
Case 4
If b <> 0 Then
c = a / b
Else
MessageBox.Show("деление на 0 не допустимо!")
End If
End Select
TextBox1.Text = Str(c) 'вывод результата выбраного действия
End Sub
Private Sub Button17_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button17.Click
a = Val(TextBox1.Text)
b = a - Int(a) ' Int(a) -целая часть значения переменной а
If b >= 0.5 Then
TextBox1.Text = CStr(Int(Val(TextBox1.Text)) + 1)
Else
TextBox1.Text = CStr(Int(Val(TextBox1.Text)))
End If
End Sub
' второй вариант округления числа:
c = System.Math.Round(c)
TextBox1.Text = Str(c)