flashdocs.net: все о macromedia flash 5, mx, 2004 pro, 8. Обучение: flash статьи flash уроки flash исходники flash софт, faq, а также flash мульты и flash игры
Все о Macromedia Flash 8 mx 2004 pro! Все о Flash! Обучение flash уроки, flash статьи, flash исходники, flash soft, flash форум, flash документация и многое другое! Все что нужно будущему flasher.
     
 Навигация

Главная

:Обучение:

Статьи
Уроки
Исходники
Flash-Софт
FAQ

:Flash-развлечения:

Flash-игры
Flash-мульты



:Добавить на сайт:


Уроки
Исходники и Flash-soft
Новость
Ссылку
Мульт или игру


:Разделы:

Форум
Ссылки
Управление аккаунтом
Поиск

:Услуги сайта:

Платные услуги сайта

 Поиск
Поиск по сайту

 Баннеры

Вы можете разместить наш баннер на своем сайте. У нас есть баннеры различных размеров и форматов.

Пример

[ все баннеры ]
 Друзья
> Flash Blog
> Верстка и Дизайн
> Документация ко всему
> Flash-Город!
Pages

Операторы и команды

With


Синтаксис

with (object) {
statement(s);
}
Аргументы

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
* object вызванный наиболее удаленным местом команды with
* Активированный объект (временный объект, созданный автоматически, когда функция вызвана для хранения локальных переменных.)
* Мувиклип, содержащий текущий исполняемый скрипт
* Глобальный объект (предопределенные объекты, такие как Math, String)

Во Flash 5 команда with заменяет нежелательную команду tellTarget. Предпочтительнее использовать with вместо tellTarget, потому что стандарт ActionScript расширен к стандарту ECMA-262. Принципиальное различие между with и tellTarget командами то, что with обращается к клипу или другим объектам как к их аргументам, в то время как tellTarget обращается к пути (target path), идентифицирующем мувиклип и не может использовать объекты.

Для установки переменной внутри команды with, она должна быть объявлена снаружи или должен быть введен полный путь до линейки (Timeline) на которой необходимо разместить переменную. Если вы установили переменную в команде with без ее объявления, команда with будет искать значение согласно контексту. Если переменная уже не существует, новое значение будет установлено на линейке, с которой команда with была вызвана.

Пример

Следующий пример устанавливает свойства x и y экземпляра someOtherMovieClip и затем командует ему перейти на третий кадр и остановиться:

with (someOtherMovieClip) {
 _x = 50;
 _y = 100;
 gotoAndStop(3);
}
Следующий отрывок кода показывает, как можно написать предшествующий пример без использования команды with:

someOtherMovieClip._x = 50;
someOtherMovieClip._y = 100;
someOtherMovieClip.gotoAndStop(3);
Этот код также можно написать с использованием команды tellTarget:

tellTarget ("someOtherMovieClip") {
 _x = 50;
 _y = 100;
 gotoAndStop(3);
}
Использование команды with полезно для одновременного вызова многих элементов в контекстном листе. В следующем примере встроенный объект Math помещен в начало объектной области (контекста). Установка Math, как объекта по умолчанию, приводит идентификаторы cos, sin и PI к Math.cos, Math.sin и Math.PI соответственно. Идентификаторы a, x, y и r - не методы или свойства объекта Math, но так как они существуют в объектной области (контексте) функции polar, они приводятся к к соответствующим локальным переменным.

function polar(r){
 var a, x, y
 with (Math) {
  a = PI * r * r
  x = r * cos(PI)
  y = r * sin(PI/2)
}
trace("area = " +a)
trace("x = " + x)
trace("y = " + y)
}
Возможно использование вложенных команд with для доступа к информации во многих контекстных областях. В следующем примере экземпляры fresno и salinas являются дочерними по отношению к california. Оператор устанавливает значения _alpha для fresno и salinas без изменения значения _alpha у california.

with (california){
 with (fresno){
  _alpha = 20;
 }
 with (salinas){
  _alpha = 40;
 }
}



Дата публикации: 2004-09-05 (1503 Прочтено)

Остальные материалы раздела Операторы и команды
Pages ©

Created by GRINDERS © 2002
Copyright © flashdocs.net 2002-2005
Внимание! Материалы с нашего портала брать для своего сайта без разрешения главного администратора КАТЕГОРИЧЕСКИ ЗАПРЕЩАЕТСЯ!
Портальная система edogs-nuke
15 запросов к базе данных. Карта сайта, каталог сайтов

Rambler's Top100