У меня есть сценарий действия на первом уровне, и он импортирует класс CustomSocket
из внешнего файла .as. Когда я получаю команду в сокете, я хочу редактировать объекты графического интерфейса. Например, когда я получаю команду TIME 23
с сервера, я хочу изменить динамическое текстовое поле timerBox
на значение 23
. У меня есть метод с именем processCommand(cmd:String)
в классе CustomSocket, но я не знаю, как изменить текст. Обычно вы можете просто сделать timerBox.text = "23";
, но это не работает во внешнем классе?
Изменить текст из другого класса с помощью AS3?
Ответы (1)
Если «CustomSocket» не является вашим классом документа, вам нужно указать некоторую ссылку на вашу временную шкалу в вашем классе.
Для общего примера,
При импорте класса
import CustomSocket;
csObj:CustomSocket = new CustomSocket(this);
затем внутри класса в конструкторе
public function LibraryS(_ref:Object):void
{
timelineRef = _ref;
}
тогда в вашем классе вы можете сказать,
timelineRef.timeBox.text = "23";
person
pravid
schedule
06.05.2013
Хорошо, у меня есть доступ к временной шкале в классе CustomSocket, но когда я пытаюсь установить текст на 23, он просто становится пустым, есть идеи, в чем причина? Спасибо.
- person Mr_CryptoPrime; 06.05.2013
Неважно, я думаю, что это была просто глупая проблема с встраиванием шрифта.
- person Mr_CryptoPrime; 06.05.2013
хорошо, вы разобрались. Надеюсь, это поможет кому-то еще, застрявшему с такой проблемой.
- person pravid; 06.05.2013