2014-03-01 2 views
0

버튼을 누를 때마다 상태가 설정됩니다. 그런 다음 프레임과 액션 스크립트로 이동하여 상태가 무엇이든 스테이지에 자식을 추가하고 상태를 다시 변경하지만 버튼을 다시 클릭하면 자식이 제거되고 상태가 이전 상태로 변경되며 아이가 다시 추가됩니다. 여기 내 코드입니다 :Actionscript 3.0, adobe flash cs6 - 자식 제거

// first frame and will never come back to this one 
function blueTurnValve(event:MouseEvent) // to go to the frame 
{ 
gotoAndPlay("blue"); 
STATE = 1; 
} 


var redscreen:redfilling = new redfilling(); 
if (STATE == 2) 
{ 
removeChild(redscreen); 
STATE = 1; 
} 

if (STATE == 1) 
{ 
addChildAt(redscreen,2); 
STATE = 2; 
} 

//after the child was added 
function blueTurnValve1(event:MouseEvent) 
{ 
gotoAndPlay("blue"); 
} 

하지만이 작동하지 않습니다, 나는 (단지 아이를 제거하기 전에) 출력에서 ​​오류가 발생합니다 :

가하면 ArgumentError

: 오류 # 2025 : 제공된 DisplayObject는 여야합니다 발신자의 자식. flash.display :: DisplayObjectContainer와 /로 removeChild()에서 p1_fla 에서 :: MainTimeline/프레임 2() p1_fla.MainTimeline : 프레임 2 : 35] flash.display :: 영화 클립 /에서 gotoAndPlay에서 () p1_fla에서 :: MainTimeline /blueTurnValve1()[p1_fla.MainTimeline::frame30:19]

내 코드에 어떤 문제가 있습니까?

+0

경우 (주 == 2) { 로 removeChild (redscreen), addChildAt(redscreen,2);

시도로 추가과 같이를 제거하다; 상태 = 1; } – JBin

+0

Hiq는 'redscreen'을 추가하고 제거하는 사이에 많은 시간이 경과합니까? 그리고 'redscreen'은 무엇입니까? – Craig

답변

0

부터 removeChildAt()을 사용해야합니다.

당신은

removeChildAt(2);

관련 문제