무모하고 다시 활성화하는 방법; ButtonMode, MouseChildren 및 Enable은 작동하지 않습니다

StackOverflow https://stackoverflow.com/questions/1431647

문제

기본적으로 질문은 더 정확하게 물어볼 수 있습니다. 단순히 버튼을 비활성화 한 다음 다시 활성화 할 수 있습니까? ButtonMode를 False로 설정하려고 시도하고 MouseChildren은 False로, False를 사용할 수있었습니다. 아무것도 작동하지 않습니다. 나는 내가 알고있다 ~할 수 있었다 이벤트 청취자를 제거하지만 더 우아하고 효율적인 방법이 있습니다. 이벤트를 제거함에 따라 청취자는 특정 버튼 상태와 관련된 기능을 추적하고 반복해서 추가하여 제거해야합니다.

일시적으로 비활성화하는 깃발을 설정하는 깃발을 설정하는 방법이 있습니까? MovieClip에 롤오버 이벤트 등을 추가하면 이론적으로 이론적으로 버튼으로 변환하는 오해를 받았으며, 이는 활성화 된 속성으로 쉽게 끌 수 있습니다. 또한 제공하는 것보다 더 많은 유연성이 필요하기 때문에 SimpleButton을 사용할 수 없습니다.

나는이 모든 기능을 처리하는 사용자 정의 클래스를 만들었고 인생을 더욱 간단하게 만듭니다. 그러나 상자 외 공식적인 방법이 있는지 궁금합니다.

아래는 IPOO의 인스턴스 이름으로 무대에서 movieclip을 사용하는 격리 된 예입니다. 여기서 버튼을 클릭 할 때 설정되는 내용에 관계없이 이벤트가 항상 발사됩니다.

ipoo.addeventListener (mouseevent.roll_over, poorollover);
ipoo.addeventListener (mouseevent.roll_out, poorollout);
ipoo.addeventListener (mouseevent.click, pooclick);

함수 poorollover (_event : mouseevent) : void
{

iPoo.alpha = 0.5;  

}

함수 poorlollout (_event : mouseevent) : void
{

iPoo.alpha = 1;  

}

함수 pooclick (_event : mouseevent) : void
{

trace("Poo");  

iPoo.enabled = false;  
iPoo.buttonMode = false;  
iPoo.mouseChildren = false;  

}

도움이 되었습니까?

해결책

사용 마우스 가능 재산.

mc.mouseEnabled = false;

LIVEDOCS에서 :

만약에 활성화 활성화가 False로 설정되면 영화 클립이 Over, Down 및 Up 프레임이 비활성화됩니다. 영화 클립은 계속해서 이벤트를받습니다 (예 : Mousedown, Mouseup, Keydown 및 Keyup).

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top