Показать сообщение отдельно
Старый 14.04.2012, 16:41
heartless вне форума Посмотреть профиль Отправить личное сообщение для heartless Найти все сообщения от heartless
  № 1  
Ответить с цитированием
heartless

Регистрация: Nov 2010
Сообщений: 52
По умолчанию вызвать функцию дочернего класса

вообщем есть первый класс

Код AS3:
 
	public class SpriteExt extends Sprite
	{
 
		public function SpriteExt(myAttr:Object = null)
		{
			if (this.stage) init();
			else addEventListener(Event.ADDED_TO_STAGE, init);
		}
 
		protected function init(e:Event = null):void 
		{
			removeEventListener(Event.ADDED_TO_STAGE, init);
			trace('deleted');
		}
 
	}
и второй, его сын

Код AS3:
 
	public class MainMenu extends SpriteExt {
 
		public function MainMenu(myAttr:Object = null) {
			super(myAttr);
		}
 
		override private function init()
		{
			trace('inited');
			super();
		}
 
	}
хочу чтобы при добавлении на сцену любого из детей SpriteExt вызывалась функция init() того класса, который сообственно создался, а не init() самого родителя SpriteExt.
Тоесть output в данном случае выглядит так:
deleted
А хотелось бы
inited
deleted


Последний раз редактировалось heartless; 14.04.2012 в 16:43.