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

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

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

Регистрация: Apr 2009
Адрес: Armenia , Yerevan
Сообщений: 145
По умолчанию Полиморфизм с интерфейсом.

Здравствуйте уважаемые флешеры опять возникла проблема, а он заключается в следующем. Есть у меня несколько классов, в основном наследованы от UIComponent и выполняют интерфейс ILineDragger.

Код AS3:
package DigitalVanillaCorp.interfaces
{
	import com.mc.Math.Vector2D;
 
	import flash.events.IEventDispatcher;
	import flash.geom.Rectangle;
 
	import mx.core.ILayoutElement;
	import mx.core.IUIComponent;
	import mx.core.IVisualElement;
 
	public interface ILineDragger extends IEventDispatcher,IUIComponent,ILayoutElement<font color="Red">//тут нужен еще и наследование от IVisualElement чтобы добавлять его с помощью addElement
	{
		function set v0(value:Vector2D):void;
		function get v0():Vector2D;
 
		function set v1(value:Vector2D):void;
		function get v1():Vector2D;
 
		function set vdif(value:Vector2D):void;
		function get vdif():Vector2D;
 
		/*function set x(value:Number):void;
		function get x():Number;
 
		function set y(value:Number):void;
		function get y():Number;
 
		function set name(value:String):void;
		function get name():String;
 
		function set rotation(value:Number):void;
		function get rotation():Number;
		*/
		function startDrag(lockCenter:Boolean=false,bounds:Rectangle = null):void;
		function stopDrag():void;
 
 
 
		//function move(x:Number,y:Number):void;
 
		function updateV0():void;
	}
}
И так , проблема в том что кагда одновременно наследую IUIComponent и IVisualElement то он приводит в конфликт с некоторомы общими сеттер геттерами , например x,y ... . Как мне использовать оба так чтобы избежать конфликта ? на данный момент использую только IUIComponent, а при добовлении на сцену для всех использую

Код AS3:
var vertexPol:ILineDragger = new VertexOfPolygon;
addElement(vertexPol as IVisualElement);
 
var lineDragger:ILineDragger = new LineDragger;
addElement(lineDragger as IVisualElement);
И так мне нужно избежать присвоения типа на IVisualElement.
__________________
Urartu is a neoHittite and ProtoArmenian kingdom !!

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

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

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


 


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


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