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

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

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему  
Старый 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, "Изменение текста");
		}
 
	}
}

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

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

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


 


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


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