1
함수에 캔버스를 만들고 함수에 CLICK 이벤트 리스너가 있습니다. 클릭하면 캔버스 안에있는 것을 조작하고 싶습니다.다른 함수에서 만든 캔버스에 액세스하고 있습니까?
사전 클래스를 사용하여 캔버스를 참조 할 수 있습니까?
함수에 캔버스를 만들고 함수에 CLICK 이벤트 리스너가 있습니다. 클릭하면 캔버스 안에있는 것을 조작하고 싶습니다.다른 함수에서 만든 캔버스에 액세스하고 있습니까?
사전 클래스를 사용하여 캔버스를 참조 할 수 있습니까?
사전이 필요하지 않습니다.
canvas.addEventListener(MouseEvent.CLICK, clickHandler);
당신이 event.currentTarget
속성을 사용하여 clickHandler
방법 내부 canvas
에 액세스 할 수 있습니다 : 당신은 같은 것을 사용하여 클릭 리스너를 추가한다고 가정.
private function clickHandler(event:MouseEvent):void
{
//currentTarget is typed as object - cast it to canvas
var canvas:Canvas = Canvas(event.currentTarget);
//now do whatever you want with canvas
canvas.setStyle("backgroundColor", 0xffff00);
}
이벤트 리너가 캔버스 안에있는 버튼은 무엇입니까? 어떻게하면 캔버스의 자식에 액세스 할 수 있습니까? 이 경우 사전을 사용해야합니까? – Adam
@Adam 당신은 캔버스의 자식 인 버튼을 의미합니까? 당신은'event.currentTarget'에서 버튼을 얻을 수 있고'button.parent'에서 캔버스를 얻을 수 있습니다 -하지만 나는 이것을 위해 사전을 사용하지 않고'canvas'를 클래스의 인스턴스 변수로 선언하려고합니다. 이것이 바로 인스턴스 변수의 의미입니다. – Amarghosh