![]() |
|
|
|
with
Синтаксис
Аргументы object Экземпляр ActionScript объекта или мувиклипа. statement(s) Команда или группа команд, заключенных в фигурные скобки. Описание Команда; временно изменяет область контекстного действия (или путь), используемые для определения выражений и команд в statement(s). После выполнения команды with, область действия восстанавливается к первоначальному значению. Object соответствует контекстной области, в которой читаются свойства, переменные и функции. Например, если object - myArray и два его свойства определены, как length и concat, эти свойства автоматически читаются как myArray.length и myArray.concat. В другом примере, если object есть state.california, то это то же самое, как если бы любая команда или операторы внутри команды with были вызваны изнутри экземпляра california. Для нахождения значения идентификатора в statement(s), ActionScript начинает поиск в начале контекстной области, определенной object и ищет их в каждом уровне контекста в характерном порядке. Контекстная область, используемая командой with, определяет идентификаторы начиная с первого элемента следующего списка и до последнего: object вызванный изнутри команды with
Для установки переменной внутри команды with, она должна быть объявлена снаружи или должен быть введен полный путь до линейки (Timeline) на которой необходимо разместить переменную. Если вы установили переменную в команде with без ее объявления, команда with будет искать значение согласно контексту. Если переменная уже не существует, новое значение будет установлено на линейке, с которой команда with была вызвана. Пример Следующий пример устанавливает свойства x и y экземпляра someOtherMovieClip и затем командует ему перейти на третий кадр и остановиться:
Следующий отрывок кода показывает, как можно написать предшествующий пример без использования команды with:
Этот код также можно написать с использованием команды tellTarget:
Использование команды with полезно для одновременного вызова многих элементов в контекстном листе. В следующем примере встроенный объект Math помещен в начало объектной области (контекста). Установка Math, как объекта по умолчанию, приводит идентификаторы cos, sin и PI к Math.cos, Math.sin и Math.PI соответственно. Идентификаторы a, x, y и r - не методы или свойства объекта Math, но так как они существуют в объектной области (контексте) функции polar, они приводятся к к соответствующим локальным переменным.
Возможно использование вложенных команд with для доступа к информации во многих контекстных областях. В следующем примере экземпляры fresno и salinas являются дочерними по отношению к california. Оператор устанавливает значения _alpha для fresno и salinas без изменения значения _alpha у california.
См. также |
|
|
|
|
|