Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript 1.0/2.0 (http://www.flasher.ru/forum/forumdisplay.php?f=93)
-   -   Вложения динамически создаваемых объектов (http://www.flasher.ru/forum/showthread.php?t=87079)

vampr0 28.10.2006 05:56

Вложения динамически создаваемых объектов
 
Скорее всего вопрос уже поднимался, но поиск ничего не дал :(

Так вот, вопрос. Пишу скрипт, который генерит несколько символов-кнопок, и внутрь них вставляет еще один символ, с картинкой. То есть получается что есть несколько динамически создаваемых button-i(i меняецца скажем 10 раз, и получаем 10 символов button-1, button-2, button-3), и соответственно в каждую из этих кнопок вбиваю другой символ, скажем image-i. Так вот, вопрос - как мне в дальнейшем обращатся к этим самым image-i?

Пока я допер только до такого рода конструкции:
Код:

_root["button-" + i].createEmptyMovieClip("image" + i, блабла...
_root["button-" + i].loadMovie(image_prev2_url, 'image-' + i);

Но вот что-то тут не пашет, а почему - не понимаю. Ну и конечно хотелось бы выяснить, как в дальнейшем обращацца к такого рода динамически создаваемым объектам для получения и измеения всяких их свойств. Буду признателен за любые советы/предложения/упрощения 8)

Хемуль 28.10.2006 06:10

2 vampr0:
Замените чёрточку в именах кнопок на символ нижнего подчёркивания, например...

vampr0 28.10.2006 06:12

Цитата:

Сообщение от Хемуль
2 vampr0:
Замените чёрточку в именах кнопок на символ нижнего подчёркивания, например...

Да не, это не принципиально, можно хоть вовсе без черточекподчеркиваний, одна фигня, создается тока первый объект, причем без событий, ему назначаемых, а дальше - тишина, и мертвые как водицца стоять...

Хемуль 28.10.2006 06:24

2 vampr0:
Это потому, что не приняли всерьёз моё сообщение. Если не ошибаюсь, нельзя использовать в именах клипов символ "-".

iNils 28.10.2006 06:25

Прочитайте в хелпе отличии в синтаксисе loadMovie и MovieClip.loadMovie.

vampr0 28.10.2006 06:30

окей, упростим задачу, пример из жизни, без динамики и всяких подчеркиваний и тире.

Код:

this.createEmptyMovieClip("button", _root.getNextHighestDepth());
        _root["button"].createEmptyMovieClip("image", _root["button"].getNextHighestDepth());
        _root["button"].loadMovie(image_url, "image");

Вот это работает, а после этого - уже фиг, назначаемые ивенты для кнопки не пашут раз, и то, как в этих ивентах обращацца к тем самым image через динамически формируемое имя тоже по прежнему не ясно...

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

Хемуль 28.10.2006 06:31

2 vampr0:
Хотя нет, можно использовать и "-", но не рекомендую... Иначе вам придётся обращаться к мувиклипу только так:
Код:

this["a-1"]._x = 1;
потому что так работать не будет:
Код:

this.a-1._x = 1;
И по поводу того, что сказал iNils... Надо:
Код:

_root["button"]["image"].loadMovie(image_url);
И свой код следует оформлять в тэги CODE. Иначе на вас будут сердиться. ^_^

iNils 28.10.2006 06:36

Я советую вам обратить внимание на мой первый пост :)

vampr0 28.10.2006 06:40

Цитата:

Сообщение от Хемуль
Код:

_root["button"]["image"].loadMovie(image_url);

Во! Вот именно и это мне и было нужно 8)

Цитата:

И свой код следует оформлять в тэги CODE. Иначе на вас будут сердиться. ^_^
Уже :P Спасибо!

iNils Хелп я читал, и про различия в курсе, но видимо не только я не очень внимательно читаю чужие сообщения ;))


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

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