2014-11-06 2 views
0

Я пытаюсь сделать что-то очень простое, добавить фрагмент ролика из библиотеки на сцену. Я создал класс под названием link, который расширяет MovieClip. У меня есть два клипа в библиотеке, первый из которых первоначально загружен содержит кнопки, которые должны удалить первый клип и загрузить второй. Тем не менее, я не могу загрузить второй, используя addChild(). Я надеюсь, что есть что-то очевидное, что мне не хватает. Я довольно новичок в AS3. Вот код из класса ссылка:Добавление ребенка на сцену из класса AS3

package classes.GEN1P0 
{ 
import flash.display.SimpleButton; 
import flash.display.*; 
import flash.events.*; 
import fl.controls.*; 
import fl.transitions.easing.*; 
import fl.transitions.TweenEvent; 

    public class link extends MovieClip 
     { 
      public var links:Vector.<SimpleButton > = new Vector.<SimpleButton >; 
      public var sourceMap:redMC = new redMC ; 
      public var sourceMap2:blueMC = new blueMC ; 
      public var panZoomMap:PanZoomMap = new PanZoomMap(sourceMap,704,556.3); 
      public var diagram:PanZoomMap = new PanZoomMap(sourceMap2,704.45,556.3); 
      public var zoomControls:ZoomControls = new ZoomControls(panZoomMap); 
      public var zoomControls2:ZoomControls = new ZoomControls(diagram); 
      public var navWindow:NavigatorWindow = new NavigatorWindow(panZoomMap); 
      public var navWindow2:NavigatorWindow = new NavigatorWindow(diagram); 

    public function link() 
     { 
     } 
    ///////////////////////////// 
    //Vector for Links 
    ///////////////////////////// 
    public function linkVector():void 
    { 
     for (var m:int = 0; m < 2; m++) 
     { 
      var linkNumb:SimpleButton = RunWise_GEN_1P0_Electrical_Schematic.sourceMap.panner.schematic.link_movies.getChildAt(m); 
      if ((linkNumb is SimpleButton)) 
      { 
       links.push(linkNumb); 
       var linkName:String = links[m].name; 
      } 
     } 
     for (var n:int = 0; n<links.length; n++) 
     { 
      links[n].addEventListener(MouseEvent.CLICK, linkTo); 
     } 
     function linkTo(e:Event):void 
      { 

       addChild(diagram); 
       diagram.x = 291.35; 
       diagram.y = 22.15; 

       RunWise_GEN_1P0_Electrical_Schematic.panZoomMap.parent.removeChild(RunWise_GEN_1P0_Electrical_Schematic.panZoomMap); 
       switch (e.target.name) 
        { 
        case "PPOS": 
        trace ("PPOS"); 
        break; 
        case "PYKPOS": 
        trace ("PYKPOS"); 
        break; 
        } 

      } 
    } 
    //End Code Here 
} 

}

ответ

0

Должно быть так просто, как

var _link:link = new link(); 
addChild(_link); 

Примечание: Как правило, при создании класса в AS3 используется верхний регистр для первой буквы от имени класса

public class Link extends MovieClip 
+0

Спасибо @ Карма. Я просто пропустил две строки из моего класса документов. – brianh

Смежные вопросы