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

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

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему Ответ
Старый 12.06.2012, 19:38
Universe вне форума Посмотреть профиль Отправить личное сообщение для Universe Найти все сообщения от Universe
  № 1  
Ответить с цитированием
Universe
 
Аватар для Universe

Регистрация: Feb 2010
Сообщений: 811
Отправить сообщение для Universe с помощью ICQ Отправить сообщение для Universe с помощью Skype™
Arrow Как добавить динамическую переменную к DisplayObject без создания доп. класса

Мне нужно добавить моему DisplayObject динамическое свойство, например
someDispObj.someVar = 10;
как я могу это сделать без создания динамического класса?

Старый 12.06.2012, 19:44
КорДум вне форума Посмотреть профиль Отправить личное сообщение для КорДум Найти все сообщения от КорДум
  № 2  
Ответить с цитированием
КорДум
 
Аватар для КорДум

блогер
Регистрация: Jan 2008
Адрес: syktyvkar
Сообщений: 3,803
Записей в блоге: 10
Никак. Зачем Вам такое понадобилось? Думаю, Вам нужно выделить этот ДО в отдельную сущность-класс.
__________________
тут я

Старый 12.06.2012, 22:22
XoJlToH вне форума Посмотреть профиль Отправить личное сообщение для XoJlToH Найти все сообщения от XoJlToH
  № 3  
Ответить с цитированием
XoJlToH
 
Аватар для XoJlToH

Регистрация: Sep 2006
Сообщений: 145
С мувиклипами такое точно проходит

Старый 12.06.2012, 22:58
MoHaX вне форума Посмотреть профиль Отправить личное сообщение для MoHaX Найти все сообщения от MoHaX
  № 4  
Ответить с цитированием
MoHaX
 
Аватар для MoHaX

Регистрация: Aug 2004
Сообщений: 422
Отправить сообщение для MoHaX с помощью ICQ
Тебе нужен динамический класс, MovieClip подойдет, но вообще это не красиво.

Старый 12.06.2012, 23:04
expl вне форума Посмотреть профиль Отправить личное сообщение для expl Найти все сообщения от expl
  № 5  
Ответить с цитированием
expl

блогер
Регистрация: Feb 2006
Сообщений: 1,474
Записей в блоге: 3
Там для кое-каких не MovieClip-ов тоже чудесным образом проходит, если во Flash IDE собирать, а потом, когда пытаеся заюзать Tween-овую либу, компилируя mxmlc и говоришь автору "Чувак, падает!". Автор делает каменное лицо и заявляет что у него все работает, а для не визуальных объектов твинер применить никогда не потребуется.

Если потребовалось что-то сохранить для объекта, но на нём самом этого делать не нужно/нельзя, то на ум приходят решения:

1. Меппинг значения в Dictionary - мепит та подсистема, которой нужны эти значения. Одно из достоинств - 2 подсистемы могут держать для объекта свои разные значения. Недостатки - куча кода, надо следить очень внимательно за добвалением и удалением.

2. Обертка, т.е. храним у себя в подсистеме не сами объекты, а объекты со свойтсвами и ссылкой на эти оригинальные объекты. За соответствием значений и объектов уследить проще, чем в первом случае, но эти обертки надо как-то добавлять и удалять в нашу подсистему.

3. Можно вообще везде таскать обертки вместо объектов, если есть возможность влезть во все места

4. Еще проще (если ограничения наследования не включатся) отнаследоваться и добавить поля и везде таскать наследника, если, опять же есть доступ во все части, где объекты используются.

Кстати, какая цель? Просто, я подозреваю, что для Вашей задачи есть решение гораздо красивше этих 4-х и не требующее никаких меппингов/списков/регистров этих объектов.


Последний раз редактировалось expl; 12.06.2012 в 23:06.
Старый 13.06.2012, 12:11
Universe вне форума Посмотреть профиль Отправить личное сообщение для Universe Найти все сообщения от Universe
  № 6  
Ответить с цитированием
Universe
 
Аватар для Universe

Регистрация: Feb 2010
Сообщений: 811
Отправить сообщение для Universe с помощью ICQ Отправить сообщение для Universe с помощью Skype™
У меня есть объект, которому я добавляю некоторую функциональность с помощью статического метода другого класса. Чтото на подобии своего TweenLite. Допустим что я приеняю к объекту гравитацию. Затем где то в коде мне нужно будет определять есть на этом объекте гравитация или нет. Наиболее удобным вариантом, как мне кажется, является создание в моём объекте переменной isGravity, на которую я буду воздействовать вызывая статический метод. Но такое не прокатывает для всех типов DisplayObject. Может тогда завести в этом статическом классе массив, в который пушить объект на который применили гравитацию, а потом смотреть циклом в этот массив и определять есть ли такой объект в массиве?

Старый 17.06.2012, 23:32
dimarik вне форума Посмотреть профиль Отправить личное сообщение для dimarik Найти все сообщения от dimarik
  № 7  
Ответить с цитированием
dimarik
.
 
Аватар для dimarik

модератор форума
Регистрация: Sep 2003
Адрес: Москва
Сообщений: 4,630
Записей в блоге: 20
Цитата:
Сообщение от Universe Посмотреть сообщение
У меня есть объект, которому я добавляю некоторую функциональность с помощью статического метода другого класса. Чтото на подобии своего TweenLite. Допустим что я приеняю к объекту гравитацию. Затем где то в коде мне нужно будет определять есть на этом объекте гравитация или нет.
Это могут быть проблемы "подобия" TweenLite. Он должен создать дескриптор объекту, с которым работает (п. 2 пост No. 5). Обращайтесь к менеджеру с запросом "есть ли такой объект и сколько у него гравитации".

Но не факт. Я может быть где-то и в надклассе вставил. Сильно зависит от задачи.
__________________
Воспитан в TimeZero. Работаю в Mail.ru.

Старый 13.06.2012, 12:21
udaaff вне форума Посмотреть профиль Отправить личное сообщение для udaaff Найти все сообщения от udaaff
  № 8  
Ответить с цитированием
udaaff
...

модератор форума
Регистрация: Sep 2006
Адрес: Minsk
Сообщений: 4,286
Создайте соответствующий интерфейс со свойством isGravity, который должны будут реализовать объекты, с которыми может работать ваш класс, и реализуйте его.
Или еще вариант. Создать дополлнительный "подкласс" в классе "менеджере" этих объектов, например, MyGravityObjectRegistration. Создавать экземпляр данного класса при добавлении объектов с графитацией, и в нём уже хранить ссылку на сам объект и дополнительные параметры.


Последний раз редактировалось udaaff; 13.06.2012 в 12:24.
Старый 13.06.2012, 12:35
Universe вне форума Посмотреть профиль Отправить личное сообщение для Universe Найти все сообщения от Universe
  № 9  
Ответить с цитированием
Universe
 
Аватар для Universe

Регистрация: Feb 2010
Сообщений: 811
Отправить сообщение для Universe с помощью ICQ Отправить сообщение для Universe с помощью Skype™
как то не хотелось бы создавать отдельный класс, ради одного свойства. Для этого и использую в данном случае статический метод, вместо создания класса.

Старый 13.06.2012, 12:52
КорДум вне форума Посмотреть профиль Отправить личное сообщение для КорДум Найти все сообщения от КорДум
  № 10  
Ответить с цитированием
КорДум
 
Аватар для КорДум

блогер
Регистрация: Jan 2008
Адрес: syktyvkar
Сообщений: 3,803
Записей в блоге: 10
Не экономьте байты. И место в листингах кода.
__________________
тут я

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

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

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


 


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


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