2014-12-30 4 views
0

새로운 글인 나는 Flash Professional로 게임을 만들고 있습니다. 스테이지의 무비 클립에 라이브러리의 버튼을 추가하여 addChild를 사용하고 싶습니다. 좋아, 코드는 작동하지만 distendersi 이벤트는 그렇지 않습니다. 내 코드는 여기에 있습니다 :As3 : 이벤트 리스너가 하위 작업을 수행하지 않습니다.

vFsOnM.x = -47, 45; 
vFsOnM.y = 119, 5; 
vFsOnM.width = 243, 05; 
vFsOnM.height = 30, 80; 
vFsOffM.x = -47, 45; 
vFsOffM.y = 119, 50; 
vFsOffM.width = 243, 05; 
vFsOffM.height = 30, 80; 
addEventListener(Event.ENTER_FRAME, fl_checkFS); 

function fl_checkFS(event: Event): void { 
    if (vFS == 0) { 
     menu.mIn.addChild(vFsOnM); 
     if (contains(vFsOffM)) { 
      menu.mIn.removeChild(vFsOffM); 
     } 
    } 
    if (vFS == 1) { 
     menu.mIn.addChild(vFsOffM); 
     if (contains(vFsOnM)) { 
      menu.mIn.removeChild(vFsOnM); 
     } 
    } 
} 

stage.addEventListener(Event.FULLSCREEN, fl_fsDetectM); 

function fl_fsDetectM(event: FullScreenEvent): void { 
    if (stage.displayState == StageDisplayState.NORMAL) { 
     vFS = 0; 
     menu.mIn.addChild(vFsOnM); 
     if (contains(vFsOffM)) { 
      menu.mIn.removeChild(vFsOffM); 
     } 
    } 
    if (stage.displayState == StageDisplayState.FULL_SCREEN) { 
     vFS = 1; 
     menu.mIn.addChild(vFsOffM); 
     if (contains(vFsOnM)) { 
      menu.mIn.removeChild(vFsOnM); 
     } 
    } 
} 

menu.mIn.vFsOffM.addEventListener(MouseEvent.CLICK, fl_fsSM); 
    function fl_fsSM(event: MouseEvent): void { 
     stage.displayState = StageDisplayState.NORMAL; 
     vFS = 0; 
    } 
menu.mIn.vFsOnM.addEventListener(MouseEvent.CLICK, fl_fsAM); 
    function fl_fsAM(event: MouseEvent): void { 
     stage.displayState = StageDisplayState.FULL_SCREEN; 
     vFS = 1; 
    } 

내가 내 태블릿을 사용하고 있기 때문에 코드가 제대로 붙여 바랍니다. 누군가 나를 도울 수 있습니까? 감사합니다

답변

1

당신은 다르게 무비 클립을 참조 :

menu.mIn.vFsOffM 

그냥

vFsOffM 

을 부모 속성으로 아이의 인스턴스 이름을 추가하지 않습니다로 addChild 사용. vFsOffM이 개체를 식별하는 데 사용하는 인스턴스 이름 인 경우 추가 할 부모 개체에 관계없이 해당 개체에 대한 참조가 저장됩니다.

관련 문제