Показать сообщение отдельно
Старый 01.07.2010, 11:26
AlliAS вне форума Посмотреть профиль Отправить личное сообщение для AlliAS Найти все сообщения от AlliAS
  № 1  
Ответить с цитированием
AlliAS
 
Аватар для AlliAS

Регистрация: Aug 2007
Сообщений: 168
По умолчанию Как добавить опред. в супперкласе контенер на верх списка отображения подкласса?

Здравствуйте.
Возникла идея написать класс расширяющий MovieClip, который позволял-бы при наведении на него мыши (с зажатой клавишей) отображать его границу и координаты. Также необходимо чтобы и в наследуемых от этого класса классах, происходило такое отображение.
Но проблема в том, что в этом случае контейнер, в который я рисую границу и координаты находиться ниже отображаемых объектов подкласса. Собвственно меня интересует как сделать так, чтобы опеределенный в суперклассе контейнер всегда добавлялся на самый верх списка отображения и в полклассах?

Вот код класса:

Код AS3:
package {
	import flash.display.MovieClip;
	import flash.display.Sprite;
	import flash.events.MouseEvent;
	import flash.text.TextField;
	import flash.text.TextFormat;
	import vpartner.Colors;
	import vpartner.Fonts;
 
	public class PowerCont extends MovieClip {
 
		public var $debug_cont:Sprite;
		public var $debug_txt:TextField;
		public var $debug_style:TextFormat = new TextFormat(Fonts.ARIAL, 10, Colors.GRAY);
 
		public function PowerCont() {
			$debug_cont = new Sprite();
			addChild($debug_cont);
 
			$debug_txt = new TextField();
			$debug_txt.autoSize = "left";
			$debug_txt.multiline = false;
			$debug_txt.wordWrap = false;
			$debug_txt.border = true;
			$debug_txt.background = true;
			$debug_txt.visible = false;
 
			$debug_cont.addChild($debug_txt);
			this.addEventListener(MouseEvent.MOUSE_OVER, h_thisMouseOver);
			this.addEventListener(MouseEvent.MOUSE_OUT, h_thisMouseOut);
		}
 
		private function h_thisMouseOver(e:MouseEvent):void {
			if (e.shiftKey) { 
				$debug_txt.visible = true;
				$debug_txt.text = "x:" + this.x + ", y:" + this.y;
				$debug_cont.graphics.lineStyle(1, Colors.CYAN);
				$debug_cont.graphics.drawRect(0, 0, width, height);
				$debug_cont.graphics.endFill();
			}
		}
 
		private function h_thisMouseOut(e:MouseEvent):void {
			$debug_cont.graphics.clear();
			$debug_txt.visible = false;
		}
 
	}
 
}
Мне также необходимо чтобы и наследуемые от этого класса