![]() |
Здравствуйте, гость ( Вход | Регистрация )
![]() ![]() |
![]() |
![]() ![]()
Сообщение
#1
|
|
Новичок ![]() Группа: Пользователь Сообщений: 15 Регистрация: 21.07.2011 Пользователь №: 10598 ![]() |
Помогите пожалуйста!!!
И так сначала опишу задачу и проблему: Мне нужно чтобы один объект лег по верх другого(например при нажатии кнопки). Эти два объекта(к примеру MovieClip-ы) уже были созданы динамически. При динамическом создании первого объекта(MovieClip1), он ложится поверх всех объектов на сцене. Соответственно при создании второго объекта(MovieClip2) он тоже ложиться по верх всех объектов на сцене в том числе и поверх первого объекта(MovieClip1). Нужно что бы после всего этого при нажатии кнопочки MovieClip1 лег поверх MovieClip2 причём оба объекта должны отображаца, т.е. просто один накрывает часть другого!!! Сам вопрос: Есть ли какой нить метод или св-во, чтобы изменять наложение объектов? Мне всего то надо при нажатии кнопочки переместить уже ранее динамическисозданный объект поверх всех остальных. Сообщение отредактировал Antoxer_92 - 21.09.2011 - 20:34 |
|
|
![]()
Сообщение
#2
|
|
Ветеран конференции ![]() ![]() ![]() ![]() ![]() Группа: Flash Zone Team Сообщений: 4332 Регистрация: 10.03.2005 Из: Киев Пользователь №: 5 ![]() |
Цитата Наложение одного объекта по верх другого динамичемки Antoxer_92 Во флеше есть возможность динамического наложения объектов друг на друга. Для этого нужно изменять параметр глубины (например, меняя глубины двух объектов). Цитата Есть ли какой нить метод или св-во, чтобы изменять наложение объектов? Конечно есть. Что говорит по этому поводу хелп по флешу и наш форум (где мы уже эту тему обсуждали)? А говорит он то ![]() Код mc1.swapDepths(100);
mc1.swapDepths(mc2); |
|
|
![]() ![]()
Сообщение
#3
|
|
Новичок ![]() Группа: Пользователь Сообщений: 15 Регистрация: 21.07.2011 Пользователь №: 10598 ![]() |
MustLive, Спасибо за инфо. Я в яндексе искал уже но незнал что вводить туда конкретно, соответственно ничего и не нашел!!!
Попробывал я использовать данный метод с двумя мувиклипами(а с объектом видео данный метод вообще нельзя использовать), но флэш выдал ошибку: Warning: 1060: Migration issue: The method swapDepths is no longer supported. Use DisplayObjectContainer.parent.setChildIndex instead. For more information, see the DisplayObjectContainer class, which is extended by MovieClip.. Флэш пишет что данный метод не поддерживается. И пишет что, для более подробной информации см. DisplayObjectContainer. Погуглил и вот что я нашёл: swapChildren(child1:DisplayObject, child2:DisplayObject):void - Данный метод меняет местами (в порядке "с верху в низ") два заданных дочерних объекта. Т.е. тот объект окажется снизу, кот до этого лежал выше. getChildIndex(child:DisplayObject):int - Возвращает позицию индекса для дочернего экземпляра DisplayObject. setChildIndex(child:DisplayObject, index:int):void - Изменяет положение существующего потомка в DisplayObjectContainer Что хорошо данные методы работают со всеми объектам DisplayObject в т.ч. и с объектом video. Вот инфа для справки - здесь все методы и свойства, применяемые к объектам DisplayObject . Надеюсь тему не удалят, кому нибудь точно пригодится. Метод swapDepths() видимо устарел или как мне кажется(использовался AS 2.0). MustLive, ещё раз спасибо. Я уж думал этого вообще не реализованно во флэше. |
|
|
![]()
Сообщение
#4
|
|
Ветеран конференции ![]() ![]() ![]() ![]() ![]() Группа: Flash Zone Team Сообщений: 4332 Регистрация: 10.03.2005 Из: Киев Пользователь №: 5 ![]() |
Antoxer_92, всегда пожалуйста.
DisplayObjectContainer появился только в AS3. Поэтому вышеописанный метод, что ты нашёл, подходит лишь для AS3. Цитата Метод swapDepths() видимо устарел или как мне кажется(использовался AS 2.0). Этот метод, который был ещё с Flash 5.0, устарел лишь для AS3, а для AS1/AS2 он в самый раз ![]() |
|
|
![]() ![]() |
![]() |
Текстовая версия | Сейчас: 17.10.2011 - 21:20 |