Properties ActionScript 3编码错误

Properties ActionScript 3编码错误,properties,actionscript,undefined,Properties,Actionscript,Undefined,我需要一些代码问题的帮助。我正在尝试通过单击按钮连接到服务器。执行代码时,我在输出中收到此错误:1120:Access of undefined property nc.close 这很奇怪,因为我已经在btnStart函数中声明了nc属性。我一直在调整代码,但我不断得到相同的恼人的错误。如果你对如何解决这个问题有任何建议,那就太好了! 谢谢 代码如下: btn_One.addEventListener(MouseEvent.CLICK, btnStart); btn_Two.addEvent

我需要一些代码问题的帮助。我正在尝试通过单击按钮连接到服务器。执行代码时,我在输出中收到此错误:1120:Access of undefined property nc.close

这很奇怪,因为我已经在btnStart函数中声明了nc属性。我一直在调整代码,但我不断得到相同的恼人的错误。如果你对如何解决这个问题有任何建议,那就太好了! 谢谢

代码如下:

btn_One.addEventListener(MouseEvent.CLICK, btnStart);

btn_Two.addEventListener(MouseEvent.CLICK, btnClose);

 function btnStart(event:MouseEvent):void{
    trace("Connecting...");
    var nc:NetConnection = new NetConnection();
    nc.addEventListener(NetStatusEvent.NET_STATUS, netStatusHandler);
    nc.connect("rtmfp://localhost/streamingLive");

}
//// ERROR LINE NC.CLOSE();
function btnClose(event:MouseEvent):void{
   trace("Closing time");
   nc.close();
}

函数netStatusHandler(事件:NetStatusEvent):void{ 开关(事件信息代码){ 案例“NetConnection.Connect.Success”: 跟踪(“可怕的连接”); 打破 案例“NetConnection.Connect.Failed”: 跟踪(“无法连接”); 打破 案例“NetConnection.Connect.Rejected”: 跟踪(“呜呜”); 打破 案例“NetGroup.Connect.Success”: 跟踪(“组连接”); 打破 案例“NetGroup.Connect.Failed”: 跟踪(“组失败”); 打破 案例“NetGroup.Connect.Rejected”: 跟踪(“哎哟!!!”; 打破 var ns:NetStream=newnetstream(); ns.发布(“直播”、“流媒体”); 附加照相机(); n.attachAudio(); 连接(nc); var ng:NetGroup=new NetGroup(nc,groupspec.groupspecWithAuthorizations()); ng.addEventListener(NetStatusEvent.NET_STATUS,netStatusHandler); } } var-cam:Camera=Camera.getCamera(); 凸轮设定模式(420、320、15); 凸轮设定质量(0,85); cam.addEventListener(StatusEvent.STATUS,statusHandler); var vid:Video=新视频(); vid.width=凸轮宽度; vid.height=凸轮高度; vid.x=100; vid.y=100; 摄像机(cam); addChild(vid); var-micro:micromic=micromic.getmicromic(); 麦克风增益=50; mic.framesPerPacket=1; 麦克风设置音量(0,2000); mic.codec=SoundCodec.SPEEX; //摄像机访问权限 函数statusHandler(事件:StatusEvent):无效 { 开关(事件代码) { 案例“摄像头静音”: 跟踪(“用户单击拒绝”); 打破 案例“摄像头未静音”: 跟踪(“用户单击接受”); 打破 } } //音频访问权限 函数状态(事件:状态事件):无效 { 如果(event.code==“麦克风未静音”) { 跟踪(“允许麦克风访问”); } else if(event.code==“麦克风静音”) { 跟踪(“麦克风访问被拒绝”); } } //摄像机名称数组 var cameraA:Array=Camera.names; 对于(变量i:int=0;i
nc
在一个函数中声明,但您试图在另一个函数中使用它。有时,您可以将变量作为参数传递,但在本例中,这并不能很好地解决问题。因此,在这种情况下,请执行以下操作:

var nc:NetConnection = new NetConnection();

function btnStart(event:MouseEvent):void{
    trace("Connecting...");
    // var nc:NetConnection = new NetConnection(); // removed
    nc.addEventListener(NetStatusEvent.NET_STATUS, netStatusHandler);
    nc.connect("rtmfp://localhost/streamingLive");
}

//// ERROR LINE NC.CLOSE();
function btnClose(event:MouseEvent):void{
    trace("Closing time");
    nc.close();
}

嗨,装甲危机,你的代码工作得很好!你帮我省了很多麻烦。非常感谢
var nc:NetConnection = new NetConnection();

function btnStart(event:MouseEvent):void{
    trace("Connecting...");
    // var nc:NetConnection = new NetConnection(); // removed
    nc.addEventListener(NetStatusEvent.NET_STATUS, netStatusHandler);
    nc.connect("rtmfp://localhost/streamingLive");
}

//// ERROR LINE NC.CLOSE();
function btnClose(event:MouseEvent):void{
    trace("Closing time");
    nc.close();
}