выпуск 16 (интерактивность и ActionScript часть-4)
Данную рассылку рекомендуется
получать в формате HTML.
Количество подписчиков: 4723
Полный архив выпусков
находится на официальном сайте
"Учебный курс Flash".
Все следующие выпуски будут выкладываться на сайте
за несколько дней до выхода рассылки. В одном из будущих выпусков, будет
проведен конкурс: призовой фонд предоставлен одним из читателей курса.
Подробности в следующих выпусках.
Вся полнота возможностей Flash открывается при
использовании ActionScript. В предыдущих выпусках мы узнали, какие
действия
можно применять в проектах и даже попробовали некоторые из них на практике.
Не сомневаюсь, что большинство из Вас не стали останавливаться на приведенных
примерах, об этом свидетельствуют и присылаемые работы.
Сегодня я расскажу об основах применения
ActionScript, его операторах, функциях и параметрах (свойствах),
с их кратким
объяснением. В следующих выпусках мы будем изучать ActionScript
на конкретных
примерах.
А, пока немного отвлечемся и вспомним материал
предыдущего выпуска: нам это очень пригодится сегодня. Как, Вы знаете, при
работе с кадрами, мы можем задавать определенные имена-метки, используя их
в дальнейшем для переходов к различным эпизодам: метки кадров могут служить
не только для перехода, но и содержать подпрограммы на ActionScript
выполнение
которых, возможно без перехода на данный кадр (в будущих выпусках). Метки могут
(и должны) быть заданы для экземпляров символов из библиотеки и для текстовых
редактируемых полей.
Посмотрим, как это сделать.
Имена редактируемых полей:
щелкните правой кнопкой мыши на поле
выберите Properties
откроется окно Text Field Properties: со значениями его пунктов
мы
знакомились в одном из выпусков
в поле Variable введем имя поля
осталось нажать ОК
Для чего же это нужно? Теперь, когда у поля есть имя,
мы сможем управлять его содержанием, выводить необходимый текст или
вычисляемые значения.
Применим полученные знания на практике. Создадим
поле, в котором текст будет меняться в зависимости от нажатой кнопки:
Для работы необходимо создать текстовое
редактируемое поле с именем (например pole) на сцене и
символ кнопки в
библиотеке.
перенесем кнопку на сцену и напишем на ней "Имя"
дважды щелкните левой кнопкой мыши на этой кнопке
в появившемся окне выбираем закладку Action
указываем действие Set Variable - значение переменной
в поле Variable вписываем имя поля (в нашем случае pole)
в поле Value укажите свое имя (надеюсь, при создании текстового
поля
Вы выбрали русский шрифт?)
в итоге скрипт должен быть похож на:
On (Release)
Set Variable: "pole" = "Павел"
End On
нажмите ОК
Осталось только посмотреть, что получилось. Запустите
тестовый просмотр Control / Test Movie, при нажатии на кнопку в
поле появится
Ваше имя. Если теперь сделаете несколько кнопок с разными значениями,
содержание поля будет менятся в зависимости от нажатой кнопки. Обратите
внимание на то, что символ кнопки мы берем из библиотеки, а конкретные
действия задаем для его экземпляров на сцене.
Для дальнейшего изучения ActionScript
следует
твердо усвоить, что переменные могут быть нескольких типов:
Числовые переменные - содержат
числовые значения, например:
Set Variable: "year" = 2000 или
Set Variable: "temp" = 36.6
Символьные переменные - как, Вы
догадываетесь, содержат символы, текст и
заключены в кавычки
Set Variable: "name" = "Павел"
Set Variable: "dr" = "The best teacher" :-)
Логические переменные - могут быть
только двух типов True (1) - ИСТИНА или
False (0) - ЛОЖЬ
Set Variable: "cool" = True и
Set Variable: "cool" = 1 означают одно и тоже
Переключение типа переменной производится кнопкой
расположенной справа от поля Value: если на кнопке написано
abc (String Literal), то это будет символьная переменная, а если
знак
= (Expression), то числовое, но если при выборе типа переменной
нажать на
символ с изображение квадрата с = (Expression Editor), то мы попадем
в святая
святых ActionScript в редактор выражений.
Давайте узнаем назначение предлагаемых элементов
выражений (нет, мы не станем учить использование особенностей русских
идиоматических выражений периода матриархата, хотя иногда, при работе с
ActionScript так и тянет ими воспользоваться :-).
Вот их перечень:
Операторы Основные () - Группировка
Числовые = - Равно
<> - Не равно
< - Меньше
> - Больше
>= - Меньше или равно
<= - Больше или равно
Символьные "" - Строка символов
& -Объединение
eg - Равно
ne - Не равно
lt - Меньше
gt - Больше
le - Меньше или равно
ge - Больше или равно
Логические and - Логическое И
or - Логическое ИЛИ
not - Логическое НЕ
Функции Основные Eval - значение переменной, заданной выражением
True - логическое ИСТИНА (1)
False - логическое ЛОЖЬ (0)
Newline - перевод строки в выражении
GetTimer - определяет время, в миллисекундах, прошедшее с начало
запуска фильма.
Числовые Int - выделение целого числа
Random - случайное число до от 0 до заданного числа.
Символьные Substring - "вырезание" фрагмента из символьной строки
Length - определяет количество символов в строке
Chr - преобразование числа в символ в соответствии с кодом ANSII
Ord - обратное преобразование: символа в код ANSII
Параметры GetProperty - получение значений объекта (клипа)
_x - положение объекта по горизонтали
_y - положение объекта по вертикали
_width - ширина объекта
_height - высота объекта
_rotation - вращение объекта
_target - путь к объекту
_name - в отличие от _target возвращает только
имя объекта
_url - определяет полный URL файла swf
_xscale - изменение масштаба объекта в процентах, по горизонтали
_yscale - изменение масштаба объекта в процентах, по вертикали
_currentframe - текущий номер кадра
_totalframes - количество кадров в фильме (клипе)
_framesloaded - количество уже загруженных кадров
_alpha - прозрачность объекта
_visible - отображение объекта
_droptarget - путь к объекту, над которым перетаскивают в данный
момент (клип)
Глобальные _highquality - качество воспроизведение фильма
_focesrect - режим фокусной рамки
_sounbuftime - значение настройки буфера текста в секундах
Вы, конечно, обратили внимание, что есть две
похожих группы операторов с одинаковым назначением, но одна из них
предназначена для числовых переменных, а другая для символьных. При написании
собственного ActionScript необходимо научиться различать, в каких
случаях
нужно применять каждую из них.
Приведу пример.
Х=5+6
На ActionScript это можно записать так
Set Variable: "x" = 5 + 6
Тут нет ничего сложного, так ведь?
Set Variable: "y" = 5
Set Variable: "z" = 6
Set Variable: "x" = y + z
Результат будет тот же, а вот если нам необходимо
"сложить" из двух слов-предложений одно то запись
Set Variable: "b" = "Action"
Set Variable: "c" = "Script"
Set Variable: "a" = c + b
будет ошибочной, вернее, только последняя строчка.
Так, как мы в данном случае, имеем дело с символьными переменными, то вместо
знака сложения (+), мы должны использовать знак объединения (&)
или, если
говорить правильно - конкатенации.
Set Variable: "a" = c & b
В результате а будет равен ActionScript В следующем примере, показано объединение символьной
и числовой переменной
Set Variable: "month" = "September"
Set Variable: "last" = 1999
Set Variable: "year" = last + 1
Set Variable: "now" = month & " " & year
После столь долгой теории, пора применить полученные
знания на практике.
Домашнее задание:
Реализуем эмулятор пейджинговой станции.
Необходимо создать терминал, в который вводится
информация, после нажатия на одну из кнопок с номерами пейджеров сообщение
должно появиться на этом пейждере.
Уточнение задания:
Весь фильм состоит из одного кадра, на котором расположен и терминал и пейджеры.
В следующем выпуске мы усовершенствуем этот проект, научимся отправлять
послания на указанный номер и прокручивать полученные сообщения на индикаторе
пейджера.
К сожалению, на предыдущее задание, пока не
было прислано ни одной работы! Неужели, Вы испугались сложности работы? Не верю.
И напоминаю, что срок приема задания истекает 13-го сентября.
Задание сегодняшнего выпуска принимаются до 16-го сентября.
Приглашаю всех, кто хочет создать свой сайт,
зарегистрироваться
на бесплатном сервере:
35 Mb, полная поддержка Flash и других распространенных форматов, удобная
статистика, ftp доступ и режим создания сайта, через Web-форму, отсутствие
рекламы, неограниченное количество собственных e-mail адресов и быстрый канал.
Для тех, кто зарегистрируется по моей ссылке -
гарантирую публикацию адреса в рассылке, что обеспечит быструю раскрутку Вашего
сайта.
Если Вы, уже зарегистрировались по моей ссылке, пришлите
адрес и сообщите дату регистрации.
После проверки данных Ваша ссылка будет размещена на сайте и опубликована в рассылке.
Ведущий рассылки:
Павел Г.Лапин
E-mail: murmik@mail.ru Россия Мурманск
За качество перекодирования HTML=>TXT
отвечает система Subscribe.ru