- •Лабораторный практикум
- •3 Часть
- •Visual Basic. Основы программирования
- •Дмитров 2012
- •Содержание
- •Предисловие
- •Выбор в программе
- •ВетвлениеIf...Then...Else
- •Линейный формат:
- •Блочный формат:
- •Оператор множественного выбораSelectCase
- •Организация циклов
- •Цикл со счетчикомFor...Next(Для ... Следующий)
- •Универсальный циклDo...Loop(Делать ... Цикл)
- •Циклы с предусловием.
- •Циклы с постусловием
- •Программирование графики
- •Лабораторно-практические работы Общие рекомендации по выполнению работ
- •Лабораторно-практическая работа № 1
- •Лабораторно-практическая работа № 2
- •Лабораторно-практическая работа № 3
- •Лабораторно-практическая работа № 4
- •Лабораторно-практическая работа № 5
- •Лабораторно-практическая работа № 6
- •Лабораторно-практическая работа № 7
- •Лабораторно-практическая работа № 8
- •3 Часть
- •Лабораторно-практическая работа № 9
- •1 Часть
- •2 Часть
- •Лабораторно-практическая работа № 10
- •Лабораторно-практическая работа № 11
- •2 Часть
- •Лабораторно-практическая работа № 12
- •Лабораторно-практическая работа № 13
- •Задания для самостоятельного выполнения
Лабораторно-практическая работа № 3
Тема: Условный оператор
Цель: Закрепить навыки использования условного оператора
Порядок выполнения
Установите на форме следующие объекты и измените им свойства о
-
Объект
Свойство
Значение
Командная кнопка
Name
Command1
Caption
Переключи
Изображения
Name
ImgAvto
Picture
\Icons\Traffic\Trffc6
Name
ImgDog
Picture
\Icons\Arrows\Point08
Name
ImgR
Picture
\Icons\Traffic\Trffc10c
Name
ImgG
Picture
\Icons\Traffic\Trffc10a
Name
ImgY1
Picture
\Icons\Traffic\Trffc10b
Name
ImgY2
Picture
\Icons\Traffic\Trffc10b
Таймеры
Name
Timer1
Name
Timer2
Выделите все изображения светофора (при нажатой клавише Shift) и установите следующие значения для свойств:
Stretch True
Left 1000
Top 200
Height 1000
Width 1000
Приведите свою форму в соответствие с образцом
В окне кода процедуры обработки события Click для объекта Command1 набрать
If ImgG.Visible = True Then
'выключи зеленый включи желтый
ImgG.Visible = False
ImgY1.Visible = True
Timer1.Interval = 0
Timer2.Interval = 0
Exit Sub
End If
If ImgY1.Visible = True Then
'выключи желтый включи красный
ImgY1.Visible = False
ImgR.Visible = True
Timer1.Interval = 0
Timer2.Interval = 1
Exit Sub
End If
If ImgR.Visible = True Then
'выключи красный включи желтый
ImgR.Visible = False
ImgY2.Visible = True
Timer1.Interval = 0
Timer2.Interval = 0
Exit Sub
End If
If ImgY2.Visible = True Then
'выключи желтый включи зеленый
ImgY2.Visible = False
ImgG.Visible = True
Timer1.Interval = 1
Timer2.Interval = 0
Exit Sub
End If
В окне кода процедуры обработки события Timer для объекта Timer1 набрать
ImgAvto.Top = ImgAvto.Top - 50
If ImgAvto.Top < 0 Then ImgAvto.Top = 4000
В окне кода процедуры обработки события Timer для объекта Timer2 набрать
ImgDog.Left = ImgDog.Left - 50
If ImgDog.Left < 0 Then ImgDog.Left = 4000
Проверьте работу программы
Измените приложение, включив проверку на аварию, для этого в процедуру Timer1_Timer добавьте
X1 = ImgDog.Left : Y1 = ImgDog.Top
X2 = ImgAvto.Left : Y2 = ImgAvto.Top
If (X2 > X1 - 500) And (X2 < X1 + 500) Then
If (Y2 < Y1 + 500) And (Y2 > Y1 - 500) Then
MsgBox "Авария"
ImgAvto.Top = 4000
ImgDog.Left = 4000
End If
End If
Проверьте работу программы
Лабораторно-практическая работа № 4
Тема: Выбор в программе
Цель: Закрепить навыки использования условного оператора
Постановка задачи: Организовать движение шарика внутри прямоугольного поля и уменьшение его размеров. При щелчке по шарику его размер увеличивается. Игра заканчивается, когда размеры шарика становятся достаточно малы.
Порядок выполнения
Установите на форме следующие объекты и измените им свойства:
-
Объект
Свойство
Значение
Фигура
Name
Pole
Shape
0
Изображение
Name
Shar
Stretch
True
Таймер
Name
Timer1
Interval
50
Приведите свою форму в соответствие с образцом
В разделе общих объявлений набрать:
Dim x1, y1, x2, y2, sx, sy, w, h As Integer
В окне кода процедуры обработки события Loadнабрать для объектаForm
'координаты границ поля
x1 = Pole.Left
y1 = Pole.Top
x2 = Pole.Width + x0
y2 = Pole.Height + y0
sx = 100 'шаг по горизонтали
sy = 100 'шаг по вертикали
В окне кода процедуры обработки события Timerдля объектаTimer1 набрать
'двигаем и уменьшаем шар
shar.Left = shar.Left + sx
shar.Top = shar.Top + sy
shar.Height = shar.Height - 1
shar.Width = shar.Width - 1
w = shar.Width
h = shar.Height
'проверка на изменение движения
If (shar.Left < x1) Or (shar.Left + w > x2) Then sx = sx * (-1)
If (shar.Top < y1) Or (shar.Top + h > y2) Then sy = sy * (-1)
'проверка на окончание игры
If w < 20 Or h <20 Then
MsgBox "Вы проиграли"
End
End If
В окне кода процедуры обработки события Clickдля объектаShar набрать
shar.Height = shar.Height + 50
shar.Width = shar.Width + 50
MsgBox "Ой, Ой"
Проверить работу программы
Измените программу так, чтобы
при увеличении размера шарика до 1500, выходило сообщение «Поздравляю. Вы победили»
шарик двигался с различной скоростью (менять скорость при столкновении со стенкой)