Форум 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)
-   -   DepthManager (http://www.flasher.ru/forum/showthread.php?t=78678)

KPaul 25.04.2006 22:05

1.Обычного импорта DepthManager недостаточно. Необходимо чтобы в либе был хотя бы один MM компонент експортированый в первый кадр или прямо на сцене, для корректной инициализации класса.(Он используется приемущественно только компонентами)
2. передавать ссылку на MovieClip конструктор в качестве аргумента глупо, надо хотя бы немножко знать компонентный фреймворк от MM, тогда таких ошибок не будет :)
3. Для создания пустого клипа существует только createEmptyMovieClip
4. Можно предать первым аргументом в createClassChildAtDepth например
mx.core.UIObject, но это будет тоже самое что и юзать пустой клип в либе. (+ выполнение пункта 1)

PS не понимаю чем не устраивает клип в либе в этой ситуации?? Все более базовые методы типа createClassObject основаны на этой идее...

kvv 25.04.2006 23:04

1. Просто MM компонент(например button)? Да, такой есть, а смысл? Или имелся в виду компонент DepthManager - такого я не нашел в списке компонентов - как его кидать в либрари?
2. Если бы еще кто-нибудь объяснил, почему это глупо%)...
3. Похоже, что это так... Но я просто опирался на хелп. Смотрим описание метода createEmptyMovieClip(). Там внизу написано, что "If your SWF file includes a version 2 component, use the version 2 components DepthManager class instead of the MovieClip.getNextHighestDepth() method.
". И поэтому возник резонный вопрос, никем не объясненный - и как же юзать DepthManager class для createEmptyMovieClip.

Похоже да, придется использовать пустой клип в либрари. Не устраивает тем, что нелогично. Тут всякие ооп развиваем, а создаем простейшие объекты через ж.
Anyway, спасибо за ответы всем.

KPaul 26.04.2006 15:55

1.2. Кидать например любой контрол(Loader, Button...).Почитай про фреймворк компонентов и ВСЕ станет ясно. Глупо потому что если бы ты знал реализацию таких методов как createObject, createClassObject, методов DepthManager, то сразу бы понял суть...
3. Из приведенной цитаты видно, что MM советует успользовать DepthManager для управления програмной глубиной, а не созданием, но для этого он должен быть инициализирован включением в либу компонента(самый простой способ).

Все визуальные компоненты используют пустой клип в либе(UIObject, UIComponent, View ...) В AS3 если правильно понимаю все будет проще -
что-то типа new MovieClip()
Хотя я не профи по компонентам и возможно где-то ошибаюсь - пусть меня поправят :)

kvv 26.04.2006 17:08

Понятно. Пасиб


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

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