0
나는 플래시의 초보자입니다. 원을 클릭하여 둘러싼 사각형을 표시하고이 스테이지의 다른 위치를 클릭하여이 사각형을 숨기려면이 이벤트를 구현하는 방법을 원하십니까?주변을 둘러싼 사각형을 표시하는 원을 클릭하는 방법 ?? 플래시 사용 as3.0
도움 주셔서 감사합니다.
나는 플래시의 초보자입니다. 원을 클릭하여 둘러싼 사각형을 표시하고이 스테이지의 다른 위치를 클릭하여이 사각형을 숨기려면이 이벤트를 구현하는 방법을 원하십니까?주변을 둘러싼 사각형을 표시하는 원을 클릭하는 방법 ?? 플래시 사용 as3.0
도움 주셔서 감사합니다.
스프라이트에 서클을 그립니다. 프로그래밍이 다음과 같은 방법으로 수행 할 수 있습니다. (이 크기의 하드 코딩하지 않도록) 누군가가 그것을 클릭하면
var circle : Sprite = new Sprite();
circle.graphics.beginFill(0xffcc00);
circle.graphics.drawCircle(20, 20, 20); // center x, y and radius
addChild(circle);
은, 원의 경계 사각형을 정의하는 Rectangle
인스턴스를 얻기 위해 getBounds() 방법을 사용하여 그리기 이 Rectangle
인스턴스의 정보를 사용하는 사각형.
// Create an empty Sprite into which we will draw our rectangle
var rect : Sprite = new Sprite();
circle.addEventListener(MouseEvent.CLICK, handleCircleClick);
function handleCircleClick(ev : MouseEvent) : void {
var bounds : Rectangle;
// Draw rectangular graphics into the rect sprite
bounds = circle.getBounds(circle.parent);
rect.graphics.beginFill(0x00ff00);
rect.graphics.drawRect(bounds.left, bounds.top, bounds.width, bounds.height);
// Add rect to stage, below circle
circle.parent.addChildAt(rect, 0);
}
나는 사용자가 원 밖에 클릭하면 RECT 스프라이트를 숨길 연습으로 당신에게 그것을 떠날거야.
이것은 단지 한 가지 방법 일 뿐이지 만 설정에 대해 아무 것도 설명하지 않고 사례에 대한 세부 정보를 제공하지 않기 때문에 가장 간단한 방법이라고 생각합니다.
나는 분명히 설명하지 못해 죄송합니다. 이미 사각형이 있고 내 문제는 그것을 만들지 않습니다. 문제는이 스테이지의 다른 장소 (어쩌면 MovieClip, 버튼)를 클릭 할 때입니다. 버튼의 기능에 영향을주기 때문에 "stage.addEventListener (MouseEvent.CLICK, handleClick)"를 사용하십시오. – pluto
세 가지 솔루션 : 모든 버튼에서 ev.stopImmediatePropagation()을 사용하거나 ev.target == stage인지 확인하거나 버튼과 동일한 표시 목록 분기에 속하지 않는 배경 스프라이트를 사용하고 해당 이벤트에 대한 클릭 이벤트를 수신합니다. . – richardolsson
고맙습니다! 정말 도움이됩니다! – pluto