![]() |
|
||||||||||
|
|||||||
|
|
« Предыдущая тема | Следующая тема » |
| Опции темы | Опции просмотра |
|
![]() |
![]() |
|
|||||
|
Хочу сделать передачу переменой в текстовое поле вложенного swf.as2 в/из XML.as3 мувика.
Юзаю SWFBridge - но он передаёт только значения в "". Т.е. sb1.send("sbTest","blalbalba") работает sb1.send("sbTest",txtcont1) не работает. Выдаёт [object, Object] вместо текста. Чё делать? ![]() Ps - если вдруг я некорректно выразился, мувик as2 вложен в мувик as3. В as3 идёт загрузка и определение переменных XML. Код мувика as3: //#include "as/moveMc.as"
//#include "as/main.as"
import fl.transitions.Tween;
import fl.transitions.TweenEvent;
import fl.transitions.easing.*;
import flash.display.Sprite;
import flash.system.fscommand;
import com.gskinner.utils.SWFBridgeAS3;
//
var but1 = new Loader();
but1.load(new URLRequest("textarea.swf"));
contentarea.addChild(but1);
//
//
var comert = new Loader();
comert.load(new URLRequest("commertion.swf"));
tv.comert.addChild(comert);
//
//
fscommand("fullscreen", "true");
//
var xmlLoader:URLLoader = new URLLoader();
var xmlData:XML = new XML();
xmlLoader.addEventListener(Event.COMPLETE, LoadXML);
xmlLoader.load(new URLRequest("data.xml"));
function LoadXML(xml:Event):void {
xmlData = new XML(xml.target.data);
ParseXml(xmlData);
}
function ParseXml(xmlInput:XML):void {
trace("XML Output");
trace("------------------------");
//trace(xmlInput.text.text()[1]);
//trace(xmlInput.text.text()[2]);
String:var txtcont1 = xmlInput.text.text()[0];
String:var txtcont2 = xmlInput.text.text()[1];
String:var txtcont3 = xmlInput.text.text()[2];
//
//
//
//
var sb1:SWFBridgeAS3 = new SWFBridgeAS3("test",this);
//
//
sb1.addEventListener(Event.CONNECT,onConnect);
function onConnect(p_evt:Event):void {
//out(p_evt);
sb1.send("sbTest",txtcont2);
}
//
b_1.addEventListener(MouseEvent.CLICK, click);
function click(p_evt:Event) {
//out("click");
//sb1.send("sbTest","sent from",loaderInfo.url.substr(loaderInfo.url.lastIndexOf("/")));
sb1.send("sbTest",txtcont1);
//trace(txtcont2);
}
//
//function sbTest(p_param1,p_param2) {
//out(p_param1+p_param2);
//}
//
function out(p_txt:*) {
trace(p_txt);
//outFld.appendText("\n"+String(p_txt));
}
}
import com.gskinner.utils.SWFBridgeAS2;
var sb1 = new SWFBridgeAS2("test",this);
sb1.addEventListener("connect",this);
function connect(p_param1) {
//out("connected");
out(p_param1);
}
function sbTest(p_param1) {
out(p_param1);
}
function out(p_txt) {
trace(p_txt)
scrolledMCrecipient.scrolledMC.txt.text = "\n"+p_txt;
}
Последний раз редактировалось ader; 12.06.2008 в 21:17. |
|
|||||
|
Et cetera
Регистрация: Sep 2002
Сообщений: 30,787
|
Ужасный код, к тому же синтаксически неверный. Что есть txtcont1?
|
|
|||||
|
txtcont1 - это xmlInput.text.text()[0]; Т.е. данные из ячейки xml
|
|
|||||
|
Et cetera
Регистрация: Sep 2002
Сообщений: 30,787
|
Т.е. это значение типа XML. Чего же вы тогда ожидаете? К строке вы ничего не привели, соответственно и результат…
|
|
|||||
|
поясните пожалуйста. Что значит ничего не привёл к строке? И как это сделать?
|
|
|||||
|
Сделал так:
type conversion var txtcont1 = ""+xmlInput.text.text()[0]; так оно работает, но все хтмл теги не хаваются ![]() Как правильно сделать type conversion? делаю так: var txtcont1:String = xmlInput.text.text()[0]; Html теги не хаваются. Ага. Докопался. нужно обращатся не к значению текстового поля а к переменной. Т.е. scrolledMCrecipient.scrolledMC.txt = "\n"+p_txt; вместо scrolledMCrecipient.scrolledMC.txt.text = "\n"+p_txt; Последний раз редактировалось ader; 12.06.2008 в 23:21. |
![]() |
![]() |
Часовой пояс GMT +4, время: 08:04. |
|
|
« Предыдущая тема | Следующая тема » |
|
|