2013-09-28 6 views
1

롤오버 및 롤아웃시 버튼의 색상을 변경하려면 다음 코드를 사용하고 있습니다. 이 에 다음과 같은 문제점이 있습니다. 1. 버튼을 클릭 할 때 색상이 변경되지 않았습니다. 2. 버튼을 한 번 클릭하면 작동하지 않습니다.버튼에서 롤오버 및 롤아웃 효과

pages.gotoAndStop("home"); 


// list of button instance names 
var previousClicked:DisplayObject; 
var buttonsss:Array = [home, menudown.about, menudown.portfolio, menudown.clients,  menudown.pricing, menudown.contact]; 


for each (var mc:MovieClip in buttonsss) 
{ 
mc.buttonMode = true; 
mc.mouseChildren = false; 
mc.addEventListener(MouseEvent.MOUSE_UP, onClick); 
mc.addEventListener(MouseEvent.ROLL_OVER, rolloverEffect); 
mc.addEventListener(MouseEvent.ROLL_OUT, rolloutEffect); 

} 


function onClick(e:MouseEvent):void 
{ 

pages.gotoAndStop(e.target.name); 
e.currentTarget.mouseEnabled = false; 
TweenLite.to(e.currentTarget,2,{tint:0x666666, ease:Strong.easeOut}); 
TweenLite.to(previousClicked,2,{tint:null , ease:Strong.easeOut});// set the  previous clicked to null tint 
previousClicked.addEventListener(MouseEvent.ROLL_OUT, rolloutEffect);// restore the Roll_Over effect 
previousClicked = DisplayObject(e.target); // update the last clicked button 
e.target.removeEventListener(MouseEvent.ROLL_OUT, rolloutEffect); 

} 

function rolloverEffect(e:MouseEvent):void{ 

TweenLite.to(e.currentTarget,2,{tint:0x666666, ease:Strong.easeOut}); 

} 
function rolloutEffect(e:MouseEvent):void{ 

//should change tint to null just when its enabled, but its changing always  (enabled or disabled) 
TweenLite.to(e.currentTarget,2,{tint:null , ease:Strong.easeOut}); 

} 

답변

1

내가 항상 수행 한 방법은 코드로 작업하는 대신 내장 된 버튼을 사용하는 것입니다. 상단 바에서 창을 클릭 한 다음 구성 요소를 클릭하면 (하단 근처) 사용자 인터페이스 폴더를 확장하고 버튼 항목에서 끌어서 놓으면 작은 창이 나타납니다. 그런 다음 스테이지의 해당 버튼을 두 번 클릭하면 심볼 편집 화면으로 이동하고 각 상태에 대한 사진이 단추에 표시되며 원하는 상태를 두 번 클릭하면 해당 버전을 시각적으로 편집 할 수 있습니다. 버튼.

희망이 도움이되었습니다.

참고 : 내가 먼저 플래시 프로 CS5.5로 시작 태그는 해당 기능을 사용할 수 여부 5.

0

내가 Tweenlite에 익숙하지 오전에있는 경우 플래시 CS5 내가 확실히 모르는 말한다 하지만 저는이 경우에 무엇을하는지 단순히 색을 바꾸는 것이라고 추측합니다. 맞습니까? 그렇다면 타임 라인의 색상 변경을 만들고 gotoAndStop과 결합 된 프레임 라벨을 사용하여 다양한 효과를 만들 것을 제안합니다. 이렇게하면 한 번 클릭 한 후에 작동하지 않는 버튼과 관련된 문제도 해결됩니다.