На уроках информатики, особенно при изучении основ программирования, учащимся часто надоедает решать чисто "математические" задачи. А что если включить в программу такую тему, как "Основы мультипликации"? Система программирования Visual Basic позволяет включать в программы анимировнные объеты. Одному из методов программирования анимации и посвящен наш урок.
Тема урока. Массив объектов. Метод PaintPicture.
Цель урока. О.: ознакомить учащихся с понятием - массив объектов, разобрать применение метода PaintPicture; Р.: формирование навыков оперирования объектами; В.: воспитание сознательного отношения к усвоению знаний; воспитание навыков интерактивного взаимодействия с преподавателем и учебным материалом. Раздаточный материал: Карточки с конспектом урока, основными этапами практической работы. Используемое ПО: система программирования Visual Basic.
Ход урока. 1. Организация класса. Ознакомить учащихся с планом урока: - изложение теоретического материала - выделение нового и выяснение его отношения к старому материалу; - консультация по непонятным вопросам; - планирование практической части урока; - практическая часть. 2. Основной материал. Теория. Раздать учащимся раздаточный материал. Центральным понятием современных систем программирования является понятие - ОБЪЕКТ. Объектами является кнопочки, окна, надписи. Объектом может быть отдельная картинка. На последних уроках мы с вами познакомились с очень удобным способом расположения различных данных в памяти компьютера - в виде таблиц, в которых все данные имеют одно имя и отличаются только индексом. Таким же образом мы можем загрузить в память несколько отдельных картинок - присвоить им одно имя и различные индексы - получится массив картинок. Например: Можно нарисовать несколько картинок, которые будут фазами движения какого-нибудь предмета или собачки, птички, человека. Затем с помощью программы расположить их в виде массива - m(1), m(2) и т. д. (не путайте имя просто рисунка, сохраненного в памяти и имя объекта-рисунка, который с помощью программы занесен в массив-таблицу). Мы уже знаем с вами, что элементами массива можно оперировать с помощью команды повторения (for/next). Если через эту команду поочередно выводить на экран наши рисунки, то можно получить эффект движения объекта - мультипликацию. Но в данном случае у команды for/next есть один недостаток - трудно подобрать время вывода фаз движения на экран, чтобы движение было натуральным (не очень быстрым или медленным). Более удобно это сделать с помощью другого элемента управления - Timer. В этом элементе очень легко подобрать интервал срабатывания любой команды с помощью свойства - Interval. Какая же команда позволяет вызвать на экран картинку? Если картинки загружены в память в виде массива, то вывод их в окно Picture очень удобно организовать с помощью метода PaintPicture. Использование этого метода состоит из трех этапов: 1. Массив объектов должен быть описан в начале программы - Dim n(20) As Picture 2. Загрузка элементов в массив - Set n(1) = LoadPicture("c:\VisualB\mult\b1.bmp") … 3. Вывод объектов с помощью метода PaintPicture. Picture1.PaintPicture n(1), x, y Picture1 - это имя элемента, в который выводится картинка PaintPicture - это команда, заставляющая выводить картинку n(1) - имя элемента массива x, y - координаты, в которые помещается левый верхний угол картинки Разбор неясных вопросов. Короткий экскурс по основным пунктам материала.
3. Практическое задание. Постановка задачи. Давайте попробуем выполнить следующее задание: - используя имеющиеся файлы, в которых содержатся фазы полета птицы, создать мультипликацию полета. Для этого: - создадим форму, на которую поместим - окно Picture, элемент - Timer, три командные кнопки - загрузка объектов в массив, пуск(начало мультипликации) и выход(остановка программы). Обратимся к карточкам. Выполнение практического задания. Карточка № 1
Карточка № 2
|
Dim bd(19) As Picture
Dim n, x As Integer
Dim s As String
|
 |
|
Private Sub Form_Load()
n = 1
x = 1
Timer1.Enabled = False
End Sub
|
 |
|
Private Sub Command1_Click()
For k = 1 To 19
s = k
Set bd(k) = LoadPicture("c:\VisualB\mult\b" + s + ".bmp")
Next k
End Sub
|
 |
|
Private Sub
Command2_Click() Timer1.Enabled = True
End Sub
|
 |
|
Private Sub Command3_Click()
Timer1.Enabled = False
End Sub
|
 |
|
Private Sub Timer1_Timer()
Picture1.PaintPicture bd(n), x, 1
x = x + 3
n = n + 1
If n > 19 Then n = 1
If x > 550 Then x = 1
End Sub
|
 |
Проконтролировать правильность выполнения задания. На каждом этапе контрольное тестирование программы.
Итог урока. Коротко определить основные этапы урока. Рассмотреть правильность выполнения практического задания.
Домашнее задание. Составить в тетрадях конспект урока по теме: Массив объектов. Метод PaintPicture.
|