Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
gosy.doc
Скачиваний:
6
Добавлен:
01.03.2025
Размер:
7 Мб
Скачать
☆

Абсолютные и относительные пути

Можно использовать команды для отски сообщения из одной монтажной линейки (Timeline) в другую. При этом та линейка, которая содержит команду, называется диспетчер (Controller), а вторая линейка, получающая команду - цель (target). к примеру, может быть команда в последнем кадре линейки, посылающая сообщение для вызова воспроизведения другого клипа. Чтобы обратиться к цели монтажной линейки, Вы должны использовать целевой путь (target path), который указывает местоположение мувиклипа в списке содержимого мувика (Display List).

Display List мувиклипа в режиме создания  Иерархия мувиклипа в Display List следующия:

_level0

westCoast

california

sanfrancisco

bakersfield

oregon

portland

ashland

washington

olympia

ellensburg

Также, как и на Web-сервере, каждая монтажная линейка во Flash может быть адресована двумя способами: абсолютным (absolute) или относительным путем (relative). Абсолютный путь экземпляра (instance) это всегда полный путь, начинается с номера уровня, независимо от того, из какой монтажной линейки вызывается команда, например, абсолютный путь экземпляра california будет _level0.westCoast.california. Относительный путь всегда зависит от того, откуда он строится, например, относительный путь к california из sanfrancisco будет _parent, но из portland, он станет _parent._parent.california.

Абсолютный путь начинается с имени уровня (level), в который загружен клип, и продолжается через Display List, пока не достигает целевого экземпляра. Можете также использовать ключевое слово _root, чтобы обратиться к самой верхней монтажной линейке текущего уровня. к примеру, команда в мувиклипе california, которая обращается к мувиклипу oregon может использовать абсолютный путь _root.westCoast.oregon.

Первый открываемый клип во Flash-плеере загружается на нулевой уровень (level 0). требуеться назначать каждому дополнительно загружаемому клипу номер уровня. Указывающее имя (target name) для уровня: _levelX, где X — номер уровня, на который загружается клип. к примеру, первый открываемый во Flash-плейере клип называется _level0, клип загруженный на третий уровень - _level3.

В следующем образеце, два клипа загружены в плеер: TargetPaths.swf на уровне 0 (level 0), и EastCoast.swf на уровне 5 (level 5). Уровни обозначены в отладчике (Debugger), и уровень 0 обозначенный как _root.

Для взаимодействия между клипами, расположенных на разных уровнях, Вы должны указать название уровня в целевом пути. к примеру, образец portland будет адресовать образец atlanta следующим образом:

_level5.georgia.atlanta

Вы можете использовать ключевое слово _root для ссылки на главную монтажную линейку текущего уровня. Для главной монтажной линейке или _level0, обозначение _root соответствует _level0, если указывается клипом, также расположенном на _level0. Для клипа, загруженного в _level5, _root соответствует _level5, если указывается мувиклипом, также размещённом в на уровне 5. к примеру, команда вызываемая образецом southcarolina может использовать следующий абсолютный путь для указания экземпляра florida:

_root.eastCoast.florida

Относительный путь зависит от взаимосвязей между управляющей и указываемой монтажными линейками. Относительные пути могут адресовать цели только в пределах их собственного уровня Flash-плеера. к примеру, нельзя использовать относительный путь в команде в уровне _level0, указывающей на уровень _level5.

В относительном пути, используйте ключевое слово this (этот, данный), чтобы обратиться к монтажной линейке в текущем уровне, используйте ключевое слово _parent (родитель), чтобы указать родителя текущей монтажной линейки. Вы можете использовать _parent многократно для того, чтобы подняться на одну ступень вверх в иерархии мувиклипов внутри того же уровня Flash-плейера. к примеру, _parent._parent управляет мувиклипом, расположенным на две ступени выше в иерархической структуре. Самая верхняя монтажная линейка на любом уровне во Flash-плеере - единственная монтажная линейка для которой значение _parent является неопределенным. От переводчика: Самая главная монтажная линейка не имеет родителя, поэтому ключевое слово _parent к ней не применимо.

В следующем образеце каждый город (charleston, atlanta и staugustine) является дочерним по отношению к образецу "штат" и каждый штат (southcarolina, georgia и florida) - потомок экземпляра eastCoast.

Команда на монтажной линейке экземпляра charleston может использовать следующий путь для указания экземпляра southcarolina:

_parent

Чтобы указать образец eastCoast в команде, находящейся в charleston, Вы должны использовать следующий относительный путь:

_parent._parent

Чтобы указать образец atlanta в команде, находящейся на монтажной линейке экземпляра charleston, Вы должны использовать следующий относительный путь:

_parent._parent.georgia.atlanta

Относительные пути полезны для многократного использования скриптов (scripts). к примеру, Вы могли написать скрипт к мувиклипу, который увеличивает его родителя на 150%, следующим образом:

onClipEvent (load) {

_parent._xscale = 150;

_parent._yscale = 150;

}

Можете затем многократно использовать этот скрипт, помещая его на монтажную линейку любого мувиклипа.

Используете ли Вы абсолютный или относительный путь, Вы идентифицируете (определяете) переменную на монтажной линейке, или свойство объкта с помощью точки (.) сопровождаемой именем переменной или свойства. к примеру, следующий скрипт устанавливает значение переменной name, в образеце form, равной "Gilbert".

_root.form.name = "Gilbert";

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]