Я не могу понять какой-то кусок вашего кода.
- Функция Param of Message не является переменной, и ее вызов аналогичен названию функции.
- Ваша переменная msg должна быть общедоступной
- Ваша функция Сообщение не имеет определенного возвращаемого значения
- Сообщение (Сообщение);Это не имеет смысла!
Итак, я не знаю, как работает ваше приложение, но я исправляю ваш код следующим образом:
public var msg:String = "";
function Message(msg:String):void
{
this.msg = msg;// Here you assign directly the message
trace(this.msg);
}
В коде загрузчика, если вы хотите получить доступв переменную msg ваш код должен работать нормально.
Совет: вам следует использовать классы concat для ваших swfs и работать с открытым методом для доступа к этим переменным.Если у вас есть проблемы, вы можете опубликовать больше своего кода, чтобы быть более точным.
Я надеюсь, что это будет полезно для вас!
ОБНОВЛЕНИЕ: Повторяю, я не знаюЯ не знаю много о том, как структурировано ваше приложение, я бы сделал следующее:
- Определенный в Adobe Flash класс документа для вашего проекта fla, например
main.as
- Создайте другой проект Adobe Flash с классом документа, расширяющим MovieClip: например,
Message.as
.Этот класс экспортирует вызов SWF message.swf - Поместите функцию загрузчика в Main.as.
Ваш класс сообщения должен быть написан так:
public class Message
{
private var _msg:String = "";
//Constructor
public function Message(msg:String)
{
_msg = msg;
}
//Getter method
public function get msg():String
{
return _msg;
}
}
В Main.as напишите функцию загрузчика, как вы сделали, и загрузите message.swf (обратите внимание на положение файловой системы).
Когда загрузка завершится, вы можете вызватьМетод получения сообщения msg непосредственно на загруженном SWF:
function onLoad(evt:Event):void
{
var loadedM:MovieClip = LoaderInfo(evt.target).content as MovieClip;
trace(loadedM.msg);
}