내 플래시 프로젝트에 StaticText 필드가 있고 마우스가 마우스 위로 움직일 때 일부 코드를 실행해야합니다. 따라서이 코드를 사용해 보았습니다.AS3에서 StaticText를 어떻게 찾을 수 있습니까?
stage.addEventListener(MouseEvent.MOUSE_OVER, mouseRollOver);
function mouseRollOver(event:MouseEvent):void {
var tf:StaticText = event.target as StaticText;
if (tf){
//my code
}
}
그러나 작동하지 않습니다. 동적 텍스트 필드를 사용하고 var tf에서 StaticText를 TextField로 바꿀 때 제대로 작동합니다. 나는 또한 마우스가 StaticText를 대상으로하지만 특정 텍스트 속성 (예 : "true"로 설정된 것과 같은)을 가진 어떤 종류의 객체를 감지하도록 만들 수 있다면 정적 텍스트 필드로이 객체를 사용할 수 있다고 생각했지만, 이것을하는 방법을 알아 내십시오. 어쨌든 정적 텍스트 필드를 대상으로 감지해야합니다. 어떤 도움을 주시면 감사하겠습니다.
미리 감사드립니다.
가장 쉬운 방법은 모든 텍스트 파일을 무비 클립에 캡슐화하고 (모두 하나씩 하나씩) 캡슐화하고 함께 사용하는 것입니다. DisplayObject의 hitTest 함수를 사용하여 충돌을 감지 할 수 있습니다. – Smolniy
[TextSnapshot] (http://help.adobe.com/en_US/FlashPlatform/reference/actionscript/3/flash/text/TextSnapshot.html) 클래스를 사용하여 정적 텍스트 필드,하지만 그들은 읽기 전용 일종의, 당신은 텍스트를 설정할 수 없습니다. 여전히 [hitTestTextNearPos] (http://help.adobe.com/ko_KR/FlashPlatform/reference/actionscript/3/flash/text/TextSnapshot.html#hitTestTextNearPos()) –