Прочие операции (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;
Содержание раздела