Hi,
I have an actionscript file called
XMLSocketExample.as
package
{
import flash.display.Sprite;
import flash.events.*;
import flash.net.XMLSocket;
public class XMLSocketExample extends Sprite
{
private var hostName:String = "192.168.236.129";
private var port:uint = 9000;
public var socket:XMLSocket;
public function XMLSocketExample()
{
socket = new XMLSocket();
socket.connect(hostName, port);
}
public function send(data:Object):void
{
socket.send(data);
}
}
}
And a flash file…
function myFunction(ev:DataEvent):void
{
var myXml:XML = new XML(ev.data.toString());
trace(myXml);
}
var myObject:XMLSocketExample = new XMLSocketExample();
trace(myObject.send("<method><name>getPowerSocketList</name></method>"));
myObject.socket.addEventListener(DataEvent.DATA,myFunction);
This works as it traces myXml within the function but when I take it out the function it doesn’t work. Why?
var globXml:XML;
function myFunction(ev:DataEvent):void
{
var myXml:XML = new XML(ev.data.toString());
globXml = myXml;
//trace(myXml);
}
var myObject:XMLSocketExample = new XMLSocketExample();
trace(myObject.send("<method><name>getPowerSocketList</name></method>"));
myObject.socket.addEventListener(DataEvent.DATA,myFunction);
trace(globXml); //this don't work?
Thanx in advance.