Форум Flasher.ru
Ближайшие курсы в Школе RealTime
Список интенсивных курсов: [см.]  
  
Специальные предложения: [см.]  
  
 
Блоги Правила Справка Пользователи Календарь Сообщения за день
 

Вернуться   Форум Flasher.ru > Flash > ActionScript 3.0

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему Закрытая тема
Старый 20.02.2006, 18:40
dipter вне форума Посмотреть профиль Отправить личное сообщение для dipter Найти все сообщения от dipter
  № 1  
dipter

Регистрация: Feb 2006
Сообщений: 38
По умолчанию Почему не работает addChilAt()

Мне необходимо добавлять новый MovieClip (или DisplayObject) на определенный слой (как раньше depth). При использовании addChildAt(), происходит ошибка (все что нужно я импортирую). Как можно с этим справиться?

Старый 20.02.2006, 18:53
Antares вне форума Посмотреть профиль Найти все сообщения от Antares
  № 2  
Antares
Banned
[+1 16.05.2006]
[++1 16.05.2006]
[+ 1 21.05.06]
[++ за хамство]
[+1 21.05.2006]
 
Аватар для Antares

Регистрация: Dec 2003
Сообщений: 3,925
Для начала -- указать, что же за ошибка

Старый 20.02.2006, 20:03
Antares вне форума Посмотреть профиль Найти все сообщения от Antares
  № 3  
Antares
Banned
[+1 16.05.2006]
[++1 16.05.2006]
[+ 1 21.05.06]
[++ за хамство]
[+1 21.05.2006]
 
Аватар для Antares

Регистрация: Dec 2003
Сообщений: 3,925
Раз ответа нет, предположу: вы не понимаете, зачем нужен addChildAt. Он добавляет объект в позицию по глубине, но это уже не так глубина, что раньше. AS3 рулит глубинами сам.

Если вы хотите не указать визуальную глубину, а просто добавить элемент так, чтобы он не заместил другой -- используйте addChild и не парьтесь.

Старый 20.02.2006, 20:10
dipter вне форума Посмотреть профиль Отправить личное сообщение для dipter Найти все сообщения от dipter
  № 4  
dipter

Регистрация: Feb 2006
Сообщений: 38
Мне нужно именно задавать глубину, а не распологать их по порядку. Например нужно для одного задать одну глубину, а для другого совершенно другую. А ошибка возникает следующая - №2006 the supplied index is out of bounds.

Старый 20.02.2006, 20:37
Antares вне форума Посмотреть профиль Найти все сообщения от Antares
  № 5  
Antares
Banned
[+1 16.05.2006]
[++1 16.05.2006]
[+ 1 21.05.06]
[++ за хамство]
[+1 21.05.2006]
 
Аватар для Antares

Регистрация: Dec 2003
Сообщений: 3,925
Повторяю: ActionScript 3 сам управляет глубинами. Если надо вынести объект визуально выше из списка соседей по контейнеру (читай: других детей этого же объекта-родителя), тогда используется addChildAt, но при этом параметр индекса не может быть больше, чем число элементов. Поэтому, добавлять первый объект через это свойство бессмысленно.

Этот метод создан для вставки объекта в середину по визуальной глубине, а также создания bring to front / send to back.

Старый 20.02.2006, 21:09
dipter вне форума Посмотреть профиль Отправить личное сообщение для dipter Найти все сообщения от dipter
  № 6  
dipter

Регистрация: Feb 2006
Сообщений: 38
А если все таки необходимо чтобы между объектами была разница не в 1, а в заданное количество единиц по глубине... Нужно сделать так чтобы в одном объекте было несколько объектов с заданными глубинами (например 1000, 2000, 3000 и т.д.)

Старый 20.02.2006, 21:14
Antares вне форума Посмотреть профиль Найти все сообщения от Antares
  № 7  
Antares
Banned
[+1 16.05.2006]
[++1 16.05.2006]
[+ 1 21.05.06]
[++ за хамство]
[+1 21.05.2006]
 
Аватар для Antares

Регистрация: Dec 2003
Сообщений: 3,925
Вопрос сразу: а зачем?
Чтобы запихать под второй потом еще 999? Это говорит о неверной иерархии мувиклипов в приложении.

Adobe все верно сделали, автоматическое руление глубинами __рулит__.
Опишите задачу шире, что-нибудь подскажем.

Старый 20.02.2006, 21:18
BlooDHounD вне форума Посмотреть профиль Отправить личное сообщение для BlooDHounD Посетить домашнюю страницу BlooDHounD Найти все сообщения от BlooDHounD
  № 8  
BlooDHounD
стервочка (я мужик)
 
Аватар для BlooDHounD

блогер
Регистрация: Mar 2004
Адрес: Борисов
Сообщений: 3,161
Записей в блоге: 22
хочу сам не знаю чего, мне не привычно. сделайте пожалуйста как было, а то мне 3 раза объяснили, а я так и не понял %)

Старый 20.02.2006, 21:57
dipter вне форума Посмотреть профиль Отправить личное сообщение для dipter Найти все сообщения от dipter
  № 9  
dipter

Регистрация: Feb 2006
Сообщений: 38
Делаю игру, нужно чтобы юнит скрывался за объектом, у меня есть сектор в секторе максимум 50 объектов (все в BitmapData), и может быть до 100 юнитов. Чтобы скрыть юнита за объектом я хочу сделать следующее проверяю юнита на столкновение с объектом, а затем делаю следующее у каждого объекта есть маска, под которой я буду скрывать юнита (для этого делаю у маски blendMode="erase", а юнита ставлю под (по глубине) маску для этого у маски глубина должна быть равна не 1,2,3,....., а примерно 1000,2000,3000... чтобы под один объект запихать несколько юнитов......... Вобщем объяснить достаточно сложно, но я делал это под 7 flash, затем подгонял под 8-ой, а теперь и под flex нужно переделывать. Подбирал достаточно много способов скрытия за объетами наиболее оптимальный этот (который слишком долго объяснять). Я толко начал осваиваться в flex, и для того чтобы действительно переделывать все под flex мне нужно понять как можно сделать некоторые основные элементы.....


Последний раз редактировалось dipter; 20.02.2006 в 22:13.
Старый 21.02.2006, 00:57
Antares вне форума Посмотреть профиль Найти все сообщения от Antares
  № 10  
Antares
Banned
[+1 16.05.2006]
[++1 16.05.2006]
[+ 1 21.05.06]
[++ за хамство]
[+1 21.05.2006]
 
Аватар для Antares

Регистрация: Dec 2003
Сообщений: 3,925
Не подо Флекс, а под АС3.

Во Флекс игру не сделаешь. А не проще воспользоваться возможностью цеплять любой объект к любому контейнеру? Т.е. взять юнита и перетащить в некий слой для скрытия... Раньше это было невозможно, а теперь к чему ужиматься?

Создать новую тему Закрытая тема Часовой пояс GMT +4, время: 13:54.
Быстрый переход
  « Предыдущая тема | Следующая тема »  

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


 


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


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