Перемещение объектов с помощью клавиатуры. 


Мы поможем в написании ваших работ!



ЗНАЕТЕ ЛИ ВЫ?

Перемещение объектов с помощью клавиатуры.



Лабораторная работа 29

«Приемы анимации»

  1. Цель: Ознакомиться с различными приемами анимации в Visual Basic.
  2. Краткие теоретические сведения.

Перемещение объектов с помощью клавиатуры.

В среде Visual Basic имеются события, связанные с клавиатурой: Ke yDown (клавиша нажата), KeyUp (клавиша отпущена). Эти события поддерживаются объектами Form, CommandButton, HscrollВаг, VscrollBar, OptionButton, PictureBox, TextBox и др. Если на форме есть несколько объектов, поддерживающих события KeyDown и KeyUp, эти события могут быть связаны то с одним, то с другим объектом, но в конкретной ситуации - с тем объектом. который находится в данный момент в фокусе клавиатуры.

Рассмотрим заголовок процедуры обработки события Ke yDown:

Private Sub Form__KeyDown(KeyCode As Integer, Shift As Integer)

При нажатии на любую из клавиш возникает событие Ke yDown, и аргументы процедуры получают следующие значения:

KeyCode - код нажатой клавиши;

Shift – 0(не нажаты клавиши [Shift], [Ctrl], [Altl]);

- 1 (при нажатии удерживалась клавиша [Shift]);

-2 (при нажатии удерживалась клавиша [Ctrl]);

-3 (при нажатии удерживались одновременно клавиши [Shift] и [Ctrl]);

-4 (при нажатии удерживалась клавиша [Altl]);

-5 (при нажатии удерживались одновременно клавиши [Shift] и [Altl]);

Событие KeyUp работает аналогично событию KeyDown.

Метод Move

Этот метод обеспечивает перемещение объекта в новое поло­жение с заданными координатами верхнего левого угла объекта.

Формат метода

[Объект].Моуе Left [, Тор [, Width [, Height]]]

здесь Left и Top — координаты верхнего левого угла объекта после исполь­зования метода Move;

Width и Height — соответственно ширина и высота объекта после вы­полнения метода Move.

Значения текущих координат объекта являются значениями свойств Left и Тор объекта.

Значения текущей ширины и высоты объекта являются значениями СВОЙСТВ Width и Height объекта.

 

Перемещение объектов с помощью полос прокрутки

Горизонтальные полосы прокрутки (HScrollBar) и вертикальные полосы прокрутки (VScrollBar) действуют совершенно одинаково.

К специфическим свойствам полос прокруток относятся свойства Value, LargeChange, SmallChange, Max, Min.

Value — целое число, которое отражает текущую позицию ползунка на полосе прокрутки и автоматически изменяет свое значение при перемещении ползунка любым способом.

Мах - значение свойства Value, соответствующее крайнему правому (нижнему) положению ползунка.

Min — значение свойства Value, соответствующее крайнему, левому (верхнему) положению ползунка.

LargeChange - целое положительное число, равное шагу изме­нения свойства Value при щелчке внутри полосы прокрутки.

SmallChange — целое положительное число, равное шагу изменения свойства Value при щелчке по стрелке полосы про­крутки.

Значение свойства LargeChange обычно устанавливают боль­ше, чем значение свойства

SmallChange. При этом щелчке по стрелке вызывает медленное и плавное перемещение ползунка, а |щелчок внутри полосы вызывает более быстрое и скачкообразное перемещение ползунка и соответствующее изменение свойста Value.

К наиболее важным событиям, связанным с полосами про­крутки, относятся Scroll (прокрутка) и Change (изменение).

Событие Scroll непрерывно генерируется при перемещение ползунка мышью по полосе прокрутки.

Событие Change наступает при щелчке по стрелке полосы прокрутки, при щелчке внутри полосы прокрутки, а также в мо­мент отпускания кнопки мыши при перемещении ползунка.

Процедура обработки события Change обязательно должна присутствовать в программе, иначе нельзя будет использовать кнопки со стрелками. Без процедуры обработки события Scroll можно обойтись.

 

Формат метода

[Приемник.] PaintPicture Источник [Хпр, Ynp, Wnp, Нпр, Хис, Уис, Wиc, Нис, Ор]

 

Здесь

Приемник — объект, в который копируется изображение;

Источник — свойство Picture объектов Form, PictureBox, Image;

Хпр, Ynp — числа или числовые выражения типа Single, задающие ко­ординаты левой верхней вершины прямоугольника на объекте-приемнике, в который копируется изображение;

Wnp, Нпр — числа или числовые выражения типа Single, задающие со­ответственно ширину и высоту прямоугольника на объекте-приемнике, в который копируется изображение. Если параметры не соответствуют разме­рам объекта-источника, рисунок растягивается или сжимается. Если параметры пропущены, сохраняется размер рисунка-источника. Если один или оба параметра отрицательные, изображение переворачивается относительно вертикальной, горизонтальной или обеих осей;

Хис, Уис — числа или числовые выражения типа sing1е, задающие координаты левой верхней вершины прямоугольника на объекте-источнике из которого берется изображение. Если параметры пропущены, берется точка с координатами (0,0);

Wис, Нис — числа или числовые выражения типа sing1е, задающие соответственно ширину и высоту прямоугольника на объекте-источнике, изкоторого берется изображение. Если они меньше размеров рисунка- источника, копируется его часть. Если параметры пропущены, копируется рисунок;

Ор — параметр, определяющий логическую операцию (and, xor и др.), которая выполняется при копировании изображения.

Все размеры и координаты задаются в тех единицах, которые заданы свойством ScaleMode.

 

 

Создание проекта

Проект, в котором осуществляется движение шарика горизонтально от левого края формы до

правого.

End Su

Проект, с использованием объекта Timer, перемещение графического объекта из правого нижнего угла в левый верхний.

End Sub

 

3. Задание:

3.1. Создать проект, движение шарика от правого края до центра экрана.

3.2. Создать проект, движение шарика вертикально в центре формы от нижнего края до верхнего.

3.3. Создать проект, движение шарика вертикально по краю формы от верхнего края до нижнего.

3.4. Создать проект, движение шарика по диагонали, от нижнего правого угла до левого верхнего угла.(без объекта Timer)

3.5. Создать проект, движение шарика по диагонали, от нижнего левого угла до правого верхнего угла.(без объекта Timer)

3.6. Создать проект, движение шарика по синусоиде, оставляя за собой след.

3.7. Создать проект, движение шарика по окружности, оставляя за собой след.

3.8. Создать проект, движение шарика по спирали, оставляя за собой след.

3.9. Создать проект, движение шарика по экрану хаотично. Точка движется за чет изменения координат и отражается от сторон экрана под углом 45°. (использовать объект РictureВох)

 

3.10. Создать проект, движение шарика по экрану хаотично. В отличии от предыдущего задания внутри РictureВох установите прямоугольник. Пусть ваш шарик его определяет как препятствие и отскакивает. Точка движется за счет изменения координат и отражается от сторон экрана под углом 45°. (использовать объект РictureВох).

3.11. Создать проект, с использованием объекта Timer, перемещение графического объекта из левого нижнего угла в правый верхний. При этом объект увеличивается в размерах.

3.12. Создать проект, с использованием объекта Timer, перемещение графического объекта из
левого нижнего угла в правый верхний. При этом объект увеличивается в размерах.

3.13. Создать проект, с использованием объекта Timer, перемещение графического объекта по
заданной траектории, (прямоугольник, квадрат или треугольник).

 

4. Содержание отчета:

4.1.Тема лабораторной работы.

4.2.Цель работы.

4.3 Задания.Ответы на контрольные вопросы.

4.4 Выводы.

5. Контрольные вопросы:

5.1 Перечислите приемы анимации.

5.2 Как осуществляется анимация без использования таймера?

5.3 Как осуществляется анимация с использованием таймера?

5.4 Как осуществляется анимация с использованием таймера и метода PaintPicture?

6. Литература:

6.1. Информатика: Учебник. – 3-е перераб. изд. / Под ред. проф. Н.В.Макаровой. – М.: Финансы и статистика, 2002. – 768с.
6.2. Шафрин Ю.А. Информационные технологии. – М.: Бином. Лаборатория знаний, 1999. – 336с.
6.3. Симонович С.В. Специальная информатика: Учебное пособие. – М.: АСТ – ПРЕСС КНИГА; Инфорком – Пресс, 2002. – 480 с.

 

Лабораторная работа 29

«Приемы анимации»

  1. Цель: Ознакомиться с различными приемами анимации в Visual Basic.
  2. Краткие теоретические сведения.

Перемещение объектов с помощью клавиатуры.

В среде Visual Basic имеются события, связанные с клавиатурой: Ke yDown (клавиша нажата), KeyUp (клавиша отпущена). Эти события поддерживаются объектами Form, CommandButton, HscrollВаг, VscrollBar, OptionButton, PictureBox, TextBox и др. Если на форме есть несколько объектов, поддерживающих события KeyDown и KeyUp, эти события могут быть связаны то с одним, то с другим объектом, но в конкретной ситуации - с тем объектом. который находится в данный момент в фокусе клавиатуры.

Рассмотрим заголовок процедуры обработки события Ke yDown:

Private Sub Form__KeyDown(KeyCode As Integer, Shift As Integer)

При нажатии на любую из клавиш возникает событие Ke yDown, и аргументы процедуры получают следующие значения:

KeyCode - код нажатой клавиши;

Shift – 0(не нажаты клавиши [Shift], [Ctrl], [Altl]);

- 1 (при нажатии удерживалась клавиша [Shift]);

-2 (при нажатии удерживалась клавиша [Ctrl]);

-3 (при нажатии удерживались одновременно клавиши [Shift] и [Ctrl]);

-4 (при нажатии удерживалась клавиша [Altl]);

-5 (при нажатии удерживались одновременно клавиши [Shift] и [Altl]);

Событие KeyUp работает аналогично событию KeyDown.

Метод Move

Этот метод обеспечивает перемещение объекта в новое поло­жение с заданными координатами верхнего левого угла объекта.

Формат метода

[Объект].Моуе Left [, Тор [, Width [, Height]]]

здесь Left и Top — координаты верхнего левого угла объекта после исполь­зования метода Move;

Width и Height — соответственно ширина и высота объекта после вы­полнения метода Move.

Значения текущих координат объекта являются значениями свойств Left и Тор объекта.

Значения текущей ширины и высоты объекта являются значениями СВОЙСТВ Width и Height объекта.

 



Поделиться:


Последнее изменение этой страницы: 2016-12-12; просмотров: 108; Нарушение авторского права страницы; Мы поможем в написании вашей работы!

infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 54.173.214.79 (0.179 с.)