Прочие операции (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;
|