Прочие операции (Actions)
В данном разделе собраны сведения об операциях, включенных в список
Actions (Действия, операции) панели действий.
- break. Прекращает выполнение
никла. В следующем примере значение переменной box будет равно 7:
on (release) ( do {
k = k + 1; if (k>6) (
break; }
} while (k<9); box = k; }
- call. Вызывает сценарий
определенного кадра, причем сам целевой кадр при выполнении данной операции
не открывается. Сценарий просто заимствуется. У этой операции всего
один параметр, в котором задаются имена клипа и кадра. Имя кадра предваряется
двоеточием. В настоящее время вместо операции call рекомендуется использовать
механизм пользовательских функций. Пример:
on (release) {
call
("_root.My_clip:my_frame23"); }
- comment. Позволяет вставлять
в текст сценариев комментарии. Комментарии никак не влияют на выполнение
сценария. Начало комментария обозначается в тексте программы двойным
слэшем (//). Пример:
//При добавлении нового клипа здесь понадобится
внести изменения
- continue. Эта операция
до некоторой степени схожа с операцией break. Однако в отличие от последней
она прекращает выполнение не всего цикла, а лишь текущей его итерации.
В приведенном ниже примере переменная box получит значение 9:
on (release) { do {
k = k + I; if (k > 6) {
continue; I
) while (k < 9); box = k; }
- delete. Удаляет указанную
переменную или заданный объект и в случае успешного выполнения возвращает
значение true. Пример:
delete (k);
- do while. Тело цикла будет
исполняться до тех пор, пока не выполнено условие выхода из цикла. Инструкции,
заданные в фигурных скобках в конструкции do { . . . }, будут повторно
выполняться до тех пор, пока условие, заданное в скобках в конструкции
while (...) остается истинным. Это цикл с постусловием, то есть тело
цикла обязательно будет выполнено хотя бы один раз (ср. while). Пример:
on (release) {
do {
k = k + 1;
} while (k < 9);
box = k; }
- dupIicateMovieCIip. Создает
копию клипа с заданным именем экземпляра. Требуется указать уровень
и имя нового экземпляра. Пример:
on (rollover) {
_root.mcCool.dupIicateMovieCIip ("moreCool", 1) ;
moreCool. x = 8;
- else. Данная операция позволяет
задать альтернативную последовательность действий для инструкции if.
Эти действия будут выполняться при ложном значении условия. Пример:
if (k != 8) {
gotoAndPlay(1); } else (
gotoAndPlay(15); }
- else if. Позволяет задать
для инструкции if дополнительное условие, значение которого будет проверяться
при ложном основном условии. Пример:
if (k != 8) {
gotoAndPlay (1); } else if (name == "Иван") {
gotoAndPlay ("Василий"); }
- for. Позволяет организовать
цикл, в котором предусмотрены начальная инструкция присваивания и условие
завершения, как правило, связанные с значением переменной параметра
цикла, причем значение этой переменной увеличивается в инструкции инкремента
на каждом шаге цикла. Постфиксная форма инкремента (<имя переменной>++)
соответствует увеличению значения переменной после выполнения тела цикла,
а префиксная форма (+ + <имя переменной>) — перед его выполнением.
Пример:
on (release) {
for (k = 1: k < 10; k++) {
box = k; }
- for... in. Перебирает все
поля объекта, последовательно возвращая значения всех переменных, существующих
в этом объекте. Пример:
on (release) {
dog = {breed: 'спаниэль', class: 'старшие', name: 'Дружок');
for (breed in fog) {
out *-= dog [breed] + newline;
}
}
На выходе получим следующее значение переменной out:
спаниэль
старшие
Дружок
- FSCommand. См. раздел «Основные
операции (Basic Actions)».
- function. Определяет функцию
— набор операций, которые будут выполняться в рамках некоторой новой
команды. Определение функции задает этот набор, но не приводит к немедленному
выполнению входящих в него операций. Вызов функции в настоящее время
рекомендуется использовать вместо операции call.
Пример:
function My_func (xvar) (
_root.myclip._rotation.xvar;
}
Чтобы вызвать функцию, необходимо включить ее имя в сценарий кнопки,
клипа или кадра. Если функция определена с параметрами, при ее вызове
нужно использовать фактические параметры — литералы или переменные.
Пример:
on (release) {
My_func (35); }
- getURL. См. get URL в разделе
«Основные операции (Basic Actions)».
- gotoAndPlay. См. Go To
в разделе «Основные операции (Basic Actions)».
- gotoAndStop. См. Go To
в разделе «Основные операции (Basic Actions)».
- if. Позволяет задать условие,
при котором будет выполнена некая операция.
Пример:
if (k == 35) {
gotoAndPlay (7) ;
- ifFrameLoaded. Определяет,
загружен ли указанный кадр. Эта операция часто применяется и начальных
кадрах фильма в процессе его предварительной загрузки. Пример:
ifFrameLoaded ("Scenel", 15) { gotoAndPlay
(4);
)
- include. Обращается к текстовому
файлу, содержащему сценарий ActionScript, и выполняет этот сценарий.
Для файлов с внешними сценариями рекомендуется использовать расширение
as. Пример:
on (release) (
#include "remote.as";
Next Frame() ;
- nextScene. Переход к следующей
сцене. Эта команда доступна только в экспертном режиме. Пример:
NextScene();
- on. См. On Mouse Event
в разделе "Основные операции (Basic Actions)».
- onClipEvent. Позволяет
задать сценарий обработки событий для выделенного клипа. Допускается
использование девяти различных событий. Пример:
onClipEvent(load) score = 1;
I
onClipEvent(enterFrame) {
onClipEvent(unload) {
onClipEvent(mouseDown) {
- loadMovie. Cм. Load Movie
в разделе «Основные операции (Basic Actions)».
- loadVariables. Загружает
текстовый файл, содержащий описание переменных в определенном формате,
на заданный уровень либо в указанный объект. Описание каждой переменной
должно иметь вид <имя переменной-> = <значение>. Если в
файле присутствуют описания нескольких переменных, между ними следует
помещать разделитель — символ & (амперсанд). Кроме того, в файле
не должно быть ни пробелов, ни символов возврата каретки. Пример:
loadVariables("message.txt" , 0) ;
Q nextFrame. Переход к следующему кадру. Эта команда доступна только
в экспертном режиме. Пример:
onClipEvent(mouseUp) {
onClipEvent(mouseMove) {
onClipEvent(keyDown) {
onClipEvent(keyUp) (
onClipEvent(data) {
- play. Cм. Play в разделе
«Основные операции (Basic Actions)».
- prevFrame. Переход к предыдущему
кадру. Эта команда доступна только в экспертном режиме. Пример:
PrevFrame();
- prevScene. Переход к предыдущей
сцене. Эта команда доступна только и экспертном режиме. Пример:
revScene();
- print. Направляет копию
заданного рагмента, находящегося на указанном ювне или в указанном объекте,
на печать виде векторного графического изображения. В качестве обрабатываемого
фраг-гнта может выступать фильм, кадр или тределенная область экрана.
Пример:
on (release) {
print (0, "bmovie"):
- printAsBitmap. Направляет
копию данного фрагмента, находящегося на указанном уровне или в указанном
объекте, на печать в виде растрового афического изображения. В качестве
срабатываемого фрагмента может вы— упать фильм, кадр или определенная
шасть экрана. Пример:
i (release) {
printAsBitmiap(3, "bframe");
removeMovieClip. Удаляет из фильма азанный клип. Пример:
(release) {
removeMovieClip(_root.shorts./ angeShorts);
- return. Эта необязательная
операция ным образом возвращает из функции азанное значение либо константу
.11, если отсутствует фактический па-метр. Пример:
notion doTax(price, rate) ( return price + (price
* rate);
Применение операции return noзволяет генерировать выходное значение
функции; это значение может быть сохранено в переменной. Переменная
out в следующем примере получит значение результата описанных выше вычислений,
произведенных над переданными ей фактическими параметрами, то есть значение
42.12.
on (release) {
out = doTax(39, .08) ; I
- setProperty. Изменяет значение
свойства указанного клипа. При использовании этой операции необходимо
задавать путь к имени экземпляра клипа, а не к метке символа. Для фильмов
в формате Flash 4 можно использовать следующий формат:
onClipEvent (mouseDown) (
setProperty("/mcCool", _rotation, 43); }
В пакете Flash 5 подобные сценарии рекомендуется записывать иначе:
onClipEvent (mouseDown) {
_root.mcCool._rotation = 43: }
- set variable. Позволяет
задать или изменить значение переменной. В качестве присваиваемого значения
можно использовать лишь значения и составные выражения, совместимые
с типом переменной. Если инструкцию присваивания выбрать в списке Actions
(Операции), то в тексте сценария появится строка следующего вида:
set (name, value);
Подставив конкретные фактические параметры, мы можем пол учить следующую
строку:
Set (k, (x/k)* 100) ;
Однако для установки значений переменных и системе Flash 5 рекомендуется
использовать иной формат присваивания:
k = ( (x/k) * 100);
- startDrag. Позволяет задать
начальные условия перетаскивания клипа. Область перетаскивания может
быть ограничена определенными значениями, задающими селевую, правую,
верхнюю и нижнюю границы. Логический параметр при задании значения true
обеспечивает привязку указателя мыши к центру объекта.
onClipEvent (mouseDown) {
_root.mcCool.startDrag (false, 100, 250, 200, 250); I
- stop. Cм. Stop в разделе
«Основные операции (Basic Actions)».
- stopAllSounds. Cм. Stop
All Sounds в разделе «Основные операции (Basic Actions)».
- stopDrag. Позволяет определить
условия завершения перетаскивания клипа. У этой операции нет никаких
параметров. Пример:
onClipEvent (mouseUp) {
stopDrag (); }
- tellTarget. См. Tell Target
в разделе «Основные операции (Basic Actions)».
- toggleHighQuality. См.
Toggle High Quality в разделе «Основные операции (Basic Actions)».
- trace. Отладочная инструкция,
обеспечивающая отображение значения указанной переменной в окне Output
(Вывод). Пример:
do {
va r k = k + 1 ; } while (k <= 10); trace (k);
- unloadMovie. Cм. Unload
Movie u разделе «Основные операции (Basic Actions)».
- var. Определяет некоторую
переменную каклокальную. Эта операция особенно часто используется в
функциях, когда в сценарии обрабатывается несколько кнопок, кадров или
клипов. Пример:
function counter () (
var k = 1; }
- while. Инструкция цикла,
которая позволяет определить условие выхода из цикла перед началом его
выполнения; выполнение цикла продолжается, пока заданное условие является
истинным. Если перед первой итерацией цикла условие не выполняется,
тело цикла не будет выполнено ни разу. Таким образом, это цикл с предусловием.
См. также do while. Пример:
on (release) {
while (k < 9) { k = k + 1;
}
box = k; )
- with. Данная инструкция
позволяет адресовать определенный объект; этот объект используется по
умолчанию для всех инструкций, заключенных в фигурные скобки ({ }),
следующие за ключевым словом with. Эта операция рекомендуется в качестве
альтернативы устаревшей операции tellTarget. В фигурных скобках может
находиться несколько инструкций. Пример:
on (release) (
with(_root.show) { _rotation = 35; _alpha = "76;
|