Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript 3.0 (http://www.flasher.ru/forum/forumdisplay.php?f=83)
-   -   Отличие Sprite от DisplayObject и прочего (http://www.flasher.ru/forum/showthread.php?t=137689)

nOobCrafter 22.03.2010 12:21

имхо лучше вернуться к началу обсуждения и юзать спрайты когда нам не надо трогать таймлайн и мувики когда надо, то что у спрайта на пару методов \ св-в больше чем у диплейобджектконтейнера имхо роли особо не играет)

Котяра 22.03.2010 12:39

имхо - нужно юзать то, что нужно юзать.
если всегда будут спрайты - юзать спрайты.
если могут быть не только спрайты, а любой отображаемый объект - юзать DisplayObject или DisplayObjectContainer - если нужна интерактивность (добавление листенеров на события мыши)

Psycho Tiger 22.03.2010 15:10

Цитата:

Сообщение от iNils (Сообщение 894564)
Что вы придумываете? У Sprite на 6 свойств больше (buttonMode, dropTarget, graphics, hitArea, soundTransform, useHandCursor), чем у DisplayObjectContainer + два метода (startDrag, stopDrag). Чем это раздражает?

Не, я про другое, не так выразился.
Хочется класс который имеет 2 метода: addChild() и removeChild().

iNils 22.03.2010 15:29

Цитата:

Сообщение от Psycho Tiger (Сообщение 894808)
Хочется класс который имеет 2 метода: addChild() и removeChild().

Легко.
Код AS3:

package  {
        import flash.display.*;
        public class Container {
                private var _parent:DisplayObjectContainer = null;
                public function Container (parent:DisplayObjectContainer) {
                        _parent = parent;
                }
                public function addChild (child:DisplayObject):DisplayObject {
                        _parent.addChild (child);
                }
                public function removeChild (child:DisplayObject):DisplayObject {
                        _parent.removeChild (child);
                }
        }
}


NBVestal 22.03.2010 20:50

С отличием и происхождением Sprite и DisplayObject всё понятно...

А вот каково отличие DisplayObject и DisplayObjectContainer ? Методом смены типа переменных я их так и не нашёл...с виду всё одинаково, или я чего-то не учёл...

Psycho Tiger 22.03.2010 21:09

iNils, я тоже так могу :) Только практического смысла в этом 0. Хотя, наверно, моё желание бред на 100%.

asterion 22.03.2010 21:59

Вложений: 1
Все дело в наследовании:

mayakwd 22.03.2010 22:02

NBVestal DisplayObject не содержит чайлдов (у него нет методов addChild, removeChild, addChildAt и т.д.)

NBVestal 22.03.2010 22:07

Цитата:

Сообщение от mayakwd (Сообщение 894927)
NBVestal DisplayObject не содержит чайлдов (у него нет методов addChild, removeChild, addChildAt и т.д.)

Спасибо большое, теперь всё становится на свои места в моей голове =)

Цитата:

Сообщение от asterion (Сообщение 894925)
Все дело в наследовании:

asterion, а не подскажете, где подобную схемку достали? Хотелось бы по другим объектам так наглядно наследование посмотреть...

asterion 22.03.2010 22:14

Книга Программирование на ActionScript 3.0

http://dl.************/u/3296887/flas...Script_3.0.pdf

Страница 301


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

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