Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
CompGraphicsRGUIT.doc
Скачиваний:
72
Добавлен:
21.04.2014
Размер:
2.03 Mб
Скачать

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

Примерный результат (образец) этого упражнения можно просмотреть по адресу:

http://www.master-teacher.org/compAnimo/examples/airplan0.html.

  1. Создать три слоя и присвоить им следующие имена по порядку снизу вверх: Back, Objects и Control.

  2. Нарисовать объект для управления. В указанном выше образце это самолет.

  3. Превратить этот объект в символ вида MovieClip.

  4. Поместить экземпляр символа MovieClip на слой Objects. Присвоить экземпляру имя plane.

  5. Создать кнопку с надписью ОК, по описанной выше технологии.

  6. Разместить текстовые и графические объекты как в образце. Должно быть 6 кнопок с соответствующими надписями около каждой. Кнопки нужно разместить в слое Control, а белый прямоугольник – в слое Back.

  7. Выделить первую слева кнопку, около надписей Уголповоротаи +.

  8. Открыть панель Actions.

  9. Создать заготовку обработчика события Отпускание левой кнопки мыши, как описано в предыдущем упражнении.

  10. Добавить между фигурными скобками текст: plane._rotation++. Напомним, чтоplane– это имя объекта, которым мы управляем._rotation– это свойство, описывающее угол поворота.++означает, что это значение этого свойства должно увеличиваться на единицу.

  11. Выделить весь полученный текст и скопировать его в буфер обмена (Ctrl+c). Выделить вторую кнопку. Открыть для нее панель Actions и вставить копию текста из буфера обмена (Ctrl+v).

  12. Заменить знаки ++на --. Это означает, что это значение этого свойства должно уменьшаться на единицу.

  13. Выделить третью кнопку. Открыть для нее панель Actions и вставить копию текста из буфера обмена (Ctrl+v).

  14. Заменить название свойства: _rotationна_x, обеспечив, таким образом увеличение на единицу свойстваПоложение по горизонтали.

  15. Вставить из буфера обмена текст скрипта для остальных кнопок в соответствии с их функциями. Свойство Положение по вертикалиимеет имя_y.

  16. Вернуться к первому кадру слоя Control. Сделать недоступными для редактирования остальные слои.

  17. Создать кнопку перехода на следующий кадр и установить ее так, как показано на рисунке. Написать для нее скрипт:

on(release){

nextFrame();

}

  1. Добавить еще один ключевой кадр в слое Control. Изменить надпись в верхней части в соответствии с образцом.

  2. Выделить поочередно каждую кнопку управления положением объекта и изменить соответствующий скрипт так, чтобы свойство объекта изменялось на 5. Например, для кнопки, управляющей перемещением по оси Y, скрипт должен выглядеть так:

on(release){

plane._y+=5;

}

  1. Проверить работу созданного клипа (Ctrl+Enter).

  2. Два имеющихся кадра будут показываться поочередно и будет наблюдаться мерцание. Для устранения этого явления необходимо добавить вызов функции stop().

  3. Выделить первый кадр в слое Control и написать для него скрипт: stop();

  4. Выполнить тестовую проверку всех созданных функций для объектов (Ctrl+Enter).

  5. Сохранить результат работы на рабочем диске в файле plane.fla.

Использование текстовых полей для ввода управляющей информации

В предыдущих упражнениях изменения свойств объекта было задано жестко. Теперь добавим объект класса Input, который даст возможность пользователю вводить произвольное значение. Связь объекта с клипом осуществляется с помощью переменной. В нашем примере это переменная d.

  1. Добавить третий кадр в слое Control.

  2. Отредактировать надпись в верхней части кадра в соответствии с образцом.

  3. Добавить текстовое поле и задать ему свойства, открыв панель Properties:

  • Тип текстового поля (выпадающий список в левой части панели): Input Text;

  • Переменная, связанная с текстовым полем (поле ввода в правой части Панели Properties, помеченное var):d

  1. Ввести значение по умолчанию для этой переменной: 10.

  2. Выделить поочередно каждую кнопку управления положением объекта и изменить соответствующий скрипт так, чтобы свойство объекта изменялось на d. Например, для кнопки, управляющей перемещением по осиY, скрипт должен получиться таким:

on(release){

plane._y+=d;

}

  1. Выполнить тестовую проверку всех созданных функций для объектов (Ctrl+Enter). При тестировании вводить произвольные числовые значения в поле ввода.

  2. Сохранить результат на рабочем диске.