Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript 3.0 (http://www.flasher.ru/forum/forumdisplay.php?f=83)
-   -   Хранение свойств в Sprite (http://www.flasher.ru/forum/showthread.php?t=169205)

джонатан 29.09.2011 21:25

Хранение свойств в Sprite
 
Добрый день. Помню когда-то на форуме читал в какой-то теме, о то что в Sprite можно хранить свойства.
В памяти отложилось, что у Sprite есть свойство data в которую можно записать что-то. Сегодня решил это испытать, и испытание закончилось крахом.

Код AS3:

var sp:Sprite = new Sprite();
sp.data = { num: 12 };

Выдало ошибку :(

Access of possibly undefined property data through a reference with static type flash.display:Sprite.


Выходит так что про свойство data я приснил? Или все-же как-то возможно реализовать мою задачу?
Спасибо всем за внимание.

goodguy 29.09.2011 21:31

А зачем, собственно, спрайт? Их можно хранить в динамических объектах.
Код AS3:

var obj:Object = {};
obj.data = { num: 12};

Ну или расширить спрайт сделав класс динамическим:
Код AS3:

package  {
        import flash.display.Sprite;
 
        public dynamic class DynamicSprite extends Sprite {
 
                public function DynamicSprite() {
                        this.data = { num: 12 };
                }
        }
}

Или вообще добавить туда сеттер, который будет записывать нужные свойства в объект, а геттер их возвращать

джонатан 29.09.2011 21:40

С обджектом то понятно, но тут дело такое что у меня Sprite не просто Object, а в него грузится графика.
В общем ладно, спасибо, наверное буду расширять, или заюзаю MovieClip.

GBee 29.09.2011 21:48

Забыли вариант просто отнаследоваться и добавить нормальное не динамическое св-во.

Hidest 30.09.2011 18:17

Цитата:

Сообщение от GBee (Сообщение 1035765)
Забыли вариант просто отнаследоваться и добавить нормальное не динамическое св-во.

Ну так goodguy про это и сказал (сеттер/геттер)

GBee 30.09.2011 18:34

Цитата:

Ну так goodguy про это и сказал (сеттер/геттер)
Значит я не правильно интерпретировал. Я думал он хотел обертку над this.data.

goodguy 30.09.2011 19:18

Цитата:

Значит я не правильно интерпретировал.
Скорее правильно.
Я имел в виду создание переменной типа Object внутри нужного класса, и добавление в нее нужных свойств через какой-либо сеттер. Хотя сам считаю это корявым вариантом.
В большинстве случаев действительно лучше
Цитата:

просто отнаследоваться и добавить нормальное не динамическое св-во.


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

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