Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript (http://www.flasher.ru/forum/forumdisplay.php?f=5)
-   -   Как найти путь к НЕмувику? (http://www.flasher.ru/forum/showthread.php?t=37746)

Entropy 27.09.2002 20:50

Как найти путь к НЕмувику?
 
Здравствуйте.
Путь к мувику найти просто: _target или tellTarget(), а вот как найти путь к немувику, например, экземпляру класса Sound или Color? Ответы типа, "А зачем?" не предлагать.
Спасибо.

Nox Noctis 27.09.2002 21:20

хм... ну если не хочешь "зачем", тогда я бы спросил - для чего ? :D

есть оператор with (),
который работает с любым объектом (в т ч и с мувиклипом)

только я не понял что требуется -
обратиться к объекту или получить строку-путь к нему...

Entropy 27.09.2002 22:10

ОК, система такая. Я создаю мувик, в которм определен мой собственный класс. Особенность этого класса в том, что в нем определены методы, которые через fscommand обющаются с внешним миром. Этим мувиком будет пользоватся другой пользователь, следующим образом: он подгружает в него свой собственный мувик со своим личным кодом, написанным им самим. Ясное дело, что ему станет доступен мой класс. Скажем, он создает экземпляр моего класса вот так: unknownName = new MyClass. Понятное дело, что в этом случае я не знаю каким именно будет имя экземпляра, я даже не буду знать где именно он находится. Положим, юзьверенок запускает метод моего класса, в котором инкапсулирована fscommand, после чего внешняя программа именяет свойство этого самого объекта через setVariable, а соответственно она должна знать путь к объекту. А вот как? Возлагать обязанности по явному указанию имени объекта на юзьверя не есть хорошо: он вообще ничего не должен знать о внутренней реализации класса.

Вот так. Есть несколько идей, но может, коллективный разум помощнее будет?

RFMitrio 28.09.2002 02:30

По-моему самое простое:
MyClassObj = new MyClass();
MyClassObj.method=function()
{
.......
_global.link2this=this;
fscommand();
}
А во внешней команде устанавливаешь свойство этого самого объекта:
_global["link2this"].property2change=required;
Ты это имел в виду?

Entropy 28.09.2002 09:47

Спасибо, я тоже именно так и думал. Иначе, как объявить глобальную ссылку на объект к нему не достучишься. Можно правда определить путь _root, а потом пробежаться по свойствам этого рута, в методе, типа for (property in _root) if (property == this) ..., но это сносно работает только для объектов, лежащих "на поверхности", а если объект лежит, скажем, внутри массива объектов, то тут уже совсем криво получается.


Часовой пояс GMT +4, время: 09:14.

Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.