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

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

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему Закрытая тема
Старый 20.09.2012, 19:33
dvrbear вне форума Посмотреть профиль Отправить личное сообщение для dvrbear Найти все сообщения от dvrbear
  № 1  
dvrbear
[+1.3 06.03.12]
 
Аватар для dvrbear

Регистрация: Oct 2003
Адрес: Moldova, Kishinev
Сообщений: 133
Отправить сообщение для dvrbear с помощью ICQ Отправить сообщение для dvrbear с помощью Skype™
По умолчанию parent.addEventListener - только не ругайтесь :)

Заранее знаю, что будете ругать и говорить, что так не правильно, и так не делается.
И что, только родитель вправе чтото спрашивать у ребенка, но всеже я осмелюсь открыть темку )

Мучаюсь с самого начала изучения AS3 - так как в AS2 было все до ужаса просто и можно было бесконечно бегатть туда сюда и дергать что попало:
this._parent._parent.aaa.mc._parent.bbb.mc2. ...

Ближе к делу. Допустим есть много классов выполняющих разные события:
1 реагироване на мышь
2 реагирование на клаву
3 постоянное вращение
4 увеличение и уменьшение
...вообщем кучу всяких функций - которые в итоге можно применить к РОДИТЕЛЮ - если их в него добавить

Код AS3:
var Papa:PapaClass = new PapaClass();
addChild(Papa);
var Sin:Run = new Run();
Papa.addChild(Sin);
Код AS3:
package 
{
	public class Sin extends MovieClip
	{
		public function Sin()
		{
			parent.addEventListener(MouseEvent.CLICK, cliked);
		}
       //описание функции clicked
}
Как правильно повесить событие на PARENT?
(или обратиться к его свойствам? - parent.x например)
Пускай даже это будет не "по понятиям" ))) - но чтоб сработало
__________________
http://apa-noua.com/portfolio

Старый 20.09.2012, 19:36
in4core вне форума Посмотреть профиль Отправить личное сообщение для in4core Найти все сообщения от in4core
  № 2  
in4core
[+4 06.05.14]
 
Аватар для in4core

Регистрация: Mar 2009
Сообщений: 4,219
Записей в блоге: 14
При нормальном кодонаписании в 99% мысль написать слово parent в своем коде - пропадет.
Опишите задачу нормально, что вы хотите, ибо заведамо то, что вы спрашиваете - делать ЗАПРЕЩЕНО)
__________________
Марк Tween

Старый 20.09.2012, 19:43
expl вне форума Посмотреть профиль Отправить личное сообщение для expl Найти все сообщения от expl
  № 3  
expl

блогер
Регистрация: Feb 2006
Сообщений: 1,474
Записей в блоге: 3
Код AS3:
public class Sin extends MovieClip
{
	public function Sin()
	{
		addEventListener(Event.ADDED, onAdded);
		removeEventListener(Event.ADDED, onRemoved);
	}
 
	private function onAdded(event:Event):void
	{
		parent.addEventListener(MouseEvent.CLICK, clicked);
	}
 
	private function onRemoved(event:Event):void
	{
		parent.removeEventListener(MouseEvent.CLICK, clicked);
	}
 
	private function clicked(event:Event):void
	{
		//
	}
}
Или использовать ADDED_TO_STAGE/REMOVED_FROM_STAGE - там нужно из ситуации сходить

Старый 20.09.2012, 19:46
dvrbear вне форума Посмотреть профиль Отправить личное сообщение для dvrbear Найти все сообщения от dvrbear
  № 4  
dvrbear
[+1.3 06.03.12]
 
Аватар для dvrbear

Регистрация: Oct 2003
Адрес: Moldova, Kishinev
Сообщений: 133
Отправить сообщение для dvrbear с помощью ICQ Отправить сообщение для dvrbear с помощью Skype™
Я хочу создать некий набор инструментов, которые в будушем легко смогут подходить под разные задачи.

тоесть хочу написать такие классы как:
1 тянуть-бросать
2 поворачивать
3 приближать отдалять
4 дублировать
и тп

в итоге подключать их к разным графическим классам, все вместе или выборочно по одиночке.

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

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

во втором я такое практиковал
и все работало прекрасно

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

Добавлено через 4 минуты
expl - огромное спасибо!

то что нужно! ))
__________________
http://apa-noua.com/portfolio

Старый 20.09.2012, 19:56
maxkar вне форума Посмотреть профиль Отправить личное сообщение для maxkar Найти все сообщения от maxkar
  № 5  
maxkar

Регистрация: Nov 2010
Сообщений: 497
А почему у вас "эффекты" являются DisplayObject'ом? В простейшем случае это обычный класс, который прямую ссылку и получает. new Runner(ui : DisplayObject). Или Runner.addRun(ui : DisplayObject). В обоих случаях ссылка передается явно. Если вам нужен визуальный контроллер (стрелочки для вращения), то там опять parent не нужен. someObject.addChild(Runner.createRunnerFor(someObject)). В этом случае UI можно куда угодно добавлять.

Старый 20.09.2012, 20:01
dvrbear вне форума Посмотреть профиль Отправить личное сообщение для dvrbear Найти все сообщения от dvrbear
  № 6  
dvrbear
[+1.3 06.03.12]
 
Аватар для dvrbear

Регистрация: Oct 2003
Адрес: Moldova, Kishinev
Сообщений: 133
Отправить сообщение для dvrbear с помощью ICQ Отправить сообщение для dvrbear с помощью Skype™
Вот вы бы себя поняли - еслибы вернулись в прошлое на пару лет? )

все отчетливо понятно только лишь на кодовых примерах )
__________________
http://apa-noua.com/portfolio

Старый 20.09.2012, 20:21
in4core вне форума Посмотреть профиль Отправить личное сообщение для in4core Найти все сообщения от in4core
  № 7  
in4core
[+4 06.05.14]
 
Аватар для in4core

Регистрация: Mar 2009
Сообщений: 4,219
Записей в блоге: 14
Цитата:
все отчетливо понятно только лишь на кодовых примерах )
Код AS3:
public class Effect extends Object // optinional
{
   public function Effect(d_o:DisplayObject):void
   {
       // do something with DO
   }
 
}
Код AS3:
var ff:Effect = new Effect(myGrpahicIDESymbol);
ff.makeEffect();
Почитайте КОлина мука
__________________
Марк Tween

Старый 20.09.2012, 20:29
mooncar вне форума Посмотреть профиль Отправить личное сообщение для mooncar Найти все сообщения от mooncar
  № 8  
mooncar
Модрон-ветеринар
 
Аватар для mooncar

администратор
Регистрация: May 2009
Адрес: г.Казань
Сообщений: 7,357
Отправить сообщение для mooncar с помощью ICQ Отправить сообщение для mooncar с помощью Skype™
Название темы не раскрывает сути вопроса. Закрыто.
__________________
Идите первым!

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

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

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


 


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


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