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

Регистрация: May 2014
Сообщений: 26
По умолчанию Помощь в оптимизирование кода

Есть 3 класса которые расположены в без именном пакете. Класс Main создает экземпляр класса TextField и Connect, экземпляр класса TextField передается в конструктор класса Connect. В классе Connect создается экземпляр класса Mes и вызывается его метод SendClientMessage, одним из параметров которого является экземпляр класса TextField переданный ранее. А в классе Mes уже производится изменения текста(экземпляра класса TextField). Можно ли это как-то упростить?

Основной целью всего этого ставится:
-Иметь возможность изменять значение поля tx основного класса из любого класса, по средствам класса Mes

Назначение каждого класса:
-Main - основной класс который и создает текстовое поле.
-Mes - касс который предназначен для изменения значения текстового поля, расположенного в классе Main
-Connect - класс из которого вызывается метод экземпляра класса Mes, для изменения значения текстового поля класса Main/


Код AS3:
Основной:
 
package 
{
	import flash.display.Sprite;
	import flash.events.Event;
	import flash.text.TextField;
	public class Main extends Sprite 
	{
		var tx:TextField = new TextField();
		var cn:Connect = new Connect(tx);
		public function Main():void 
		{
			if (stage) init();
			else addEventListener(Event.ADDED_TO_STAGE, init);
		}
 
		private function init(e:Event = null):void 
		{
			removeEventListener(Event.ADDED_TO_STAGE, init);
			addChild(tx);
			new Mes().SendClientMessage(tx, "ТЕКСТ");
		}
 
	}
 
}
Код AS3:
Класс для отправки сообщения:
 
package  
{
	import flash.text.TextField;
	public class Mes 
	{
 
		public function Mes() 
		{
 
		}
		public function SendClientMessage(obj:TextField, msg:String):void
		{
			obj.text = msg;
		}
	}
 
}
Код AS3:
Класс отправляющий сообщение
 
package 
{
 
	import flash.text.TextField;
 
	public class Connect
	{
             public function Connect(obj:TextField) 
		{
                    new Mes().SendClientMessage(obj, "Изменение текста");
		}
 
	}
}