2012-06-24 1 views
0

Flash CS5 및 AS3에서 초보자이며 문제가 있습니다! 주어진 인스턴스 이름으로 무비 클립에서 변환 된 3 개의 사각형이 있습니다. 내가 AS3 층에 다음 코드를 입력이 알파 = 50 : 세 가지 색상 효과의 속성이roll_out 이벤트에서 알파 값이 변경되지 않습니다. 플래시 cs5

addEventListener(MouseEvent.ROLL_OVER, RollOverBtn); 
addEventListener(MouseEvent.ROLL_OUT, RollOutBtn); 

function RollOverBtn(event:MouseEvent):void 
{ 
    event.target.alpha = 100; 
} 

function RollOutBtn(event:MouseEvent):void 
{ 
    event.target.alpha = 50; 
} 

문제는 그 때 마우스를 움직일 하나 RECT 이상, 알파 변경 (100)에 그러나 때 마우스가 튀어 나오면 아무 일도 일어나지 않습니다!

제안 사항?

나는 내 코드를 변경 :

btn1.addEventListener(MouseEvent.ROLL_OVER, MouseOverBtn); 
btn1.addEventListener(MouseEvent.ROLL_OUT, MouseOutBtn); 

btn2.addEventListener(MouseEvent.ROLL_OVER, MouseOverBtn); 
btn2.addEventListener(MouseEvent.ROLL_OUT, MouseOutBtn); 

btn3.addEventListener(MouseEvent.ROLL_OVER, MouseOverBtn); 
btn3.addEventListener(MouseEvent.ROLL_OUT, MouseOutBtn); 

function MouseOverBtn(event:MouseEvent):void 
{ 
    trace("roll over"+event.target); 
    event.target.alpha = 1; 
} 

function MouseOutBtn(event:MouseEvent):void 
{ 
    trace("roll out"+event.target); 
    if(event.target.alpha == 100){ 
     event.target.alpha = 0.5; 
    } 
} 

내가 얻을 추적 메시지는 다음과 같습니다

roll over[object MovieClip] 
roll out[object MovieClip] 

이의 ROLL_OUT가 트리거되는 것을 의미하지만 여전히 알파를 변경하지 않는 내가 이해할 수있는 재산.

답변

1
  1. 알파는 0-100이 아닌 0-100 범위의 값을 가질 수 있습니다.
  2. 어디에서 청취자를 연결 했습니까? 단추에 추가해야합니다.
+0

새 코드로 내 질문을 편집했습니다. 이것을 확인할 수 있습니까? –

+0

"if (event.target.alpha == 100)"조건부 (알파가 100 일 수 없기 때문에 잘못됨)가 필요하지 않습니다. 삭제하고 지금 작동하는지보십시오. –

관련 문제