Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Живодерова В В / VB Лабораторный практикум 4 часть.doc
Скачиваний:
62
Добавлен:
26.03.2016
Размер:
1.49 Mб
Скачать

Лабораторно-практическая работа № 6

Тема: События клавиатуры.

Цель: Закрепить навыки использования события KeyDown, KeyUp

Постановка задачи: Разработать приложение, позволяющее перемещать шарик клавишами управления курсором(). Движение возможно только между линиями (для проверки на столкновение с линией использовать уравнение прямой).

Порядок выполнения

  1. Установите на форме следующие объекты и измените им свойства:

Объект

Свойство

Значение

Линии

Name

Line1

Name

Line2

Фигура

Name

SSS

Shape

3

BackStyle

1

BackColor

белый

  1. Приведите свою форму в соответствие с образцом

  1. В окне кода процедуры обработки события Loadдля объектаFormнабрать

Form1.KeyPreview = True

  1. В окне кода процедуры обработки события KeyDownдля объектаFormнабрать

'определим текущие координаты

x = sss.Left

y = sss.Top

'определим будущие координаты

If KeyCode = 37 Then 'нажата клавиша

x = x - 50

End If

If KeyCode = 39 Then ‘'нажата клавиша

x = x + 50

End If

If KeyCode = 38 Then ‘'нажата клавиша

y = y - 50

End If

If KeyCode = 40 Then ‘'нажата клавиша

y = y + 50

End If

ys1 = (Line1.Y2 - Line1.Y1) * (x - Line1.X1) / (Line1.X2 - Line1.X1) + Line1.Y1

ys2 = (Line2.Y2 - Line2.Y1) * (x - Line2.X1) / (Line2.X2 - Line2.X1) + Line2.Y1

If y < ys1 Or y > Abs(ys2) - sss.Height Then

MsgBox "Bыход за территорию!", , "Kуда пошел?"

Exit Sub

End If

sss.Move x, y 'движение

  1. Проверьте работу приложения

  2. Измените приложение, ограничив движение шарика прямоугольной зоной (внутри фигуры прямоугольник)

  1. Измените программу так, чтобы при нажатии клавиш шарик становился красным, а когда отпущена – белым.

  2. Измените программу так, чтобы управление шариком осуществлялось клавишами М (влево), И (вверх), Т (вправо) и пробел (вниз)

Результат показать преподавателю

Лабораторно-практическая работа № 7

Тема: События, связанные с клавиатурой

Цель: Закрепить навыки использования события KeyDown, KeyUp

Постановка задачи: Разработать приложение «Колобок», которое

должно работать следующим образом: колобок

постоянно жует, его можно перемещать клавишами управления курсора, кроме этого колобок «смотрит» туда, куда движется.

Порядок выполнения

  1. Загрузите редактор Paint, установите размер рисунка 1 на1 см (Рисунок / Атрибуты))

  2. Создайте 4 рисунка(см. образец) и сохраните их в файлы Колобок1, Колобок2,Колобок3, Колобок4

  3. Загрузите Visual BasicУстановите на форме следующие объекты и измените им свойства

  4. В

    Объект

    Свойство

    Значение

    Изображение (Image)

    Name

    Image1

    Picture

    Колобок1

    Visible

    true

    Изображение (Image)

    Name

    Image2

    Picture

    Колобок2

    Visible

    False

    Изображение (Image)

    Name

    Image3

    Picture

    Колобок3

    Visible

    False

    Изображение (Image)

    Name

    Image4

    Picture

    Колобок4

    Visible

    False

    Таймер (Timer)

    Name

    Timer1

    Interval

    300

    ыделите все изображения колобка (при нажатой клавишеShift) и измените следующие значения для свойств:

  • Left 1000, Top 1000

  1. В окне кода процедуры обработки события Timer для объекта Timer1 набрать

If Image1.Visible = True Then

Image1.Visible = False

Image3.Visible = True

Exit Sub

End If

If Image2.Visible = True Then

Image2.Visible = False

Image4.Visible = True

Exit Sub

End If

If Image3.Visible = True Then

Image3.Visible = False

Image1.Visible = True

Exit Sub

End If

If Image4.Visible = True Then

Image4.Visible = False

Image2.Visible = True

Exit Sub

End If

  1. В окне кода процедуры обработки события KeyDown для объекта Form набрать

If KeyCode = 39 Then 'вправо

If Image1.Visible = False And Image3.Visible = False Then

Image1.Visible = True

Image2.Visible = False

Image4.Visible = False

End If

Image1.Left = Image1.Left + 100

Image2.Left = Image2.Left + 100

Image3.Left = Image3.Left + 100

Image4.Left = Image4.Left + 100

End If

If KeyCode = 37 Then 'влево

If Image2.Visible = False And Image4.Visible = False Then

Image2.Visible = True

Image1.Visible = False

Image3.Visible = False

End If

Image1.Left = Image1.Left – 100

Image2.Left = Image2.Left - 100

Image3.Left = Image3.Left – 100

Image4.Left = Image4.Left - 100

End If

If KeyCode = 40 Then 'вниз

Image1.Top = Image1.Top + 100

Image2.Top = Image2.Top + 100

Image3.Top = Image3.Top + 100

Image4.Top = Image4.Top + 100

End If

If KeyCode = 38 Then 'вверх

Image1.Top = Image1.Top – 100

Image2.Top = Image2.Top - 100

Image3.Top = Image3.Top – 100

Image4.Top = Image4.Top - 100

End If

  1. Проверьте работу программы