2011-02-23 9 views
0

확대 할 수있는 캔버스 안에 이미지가 있습니다. 확대 할 때 이미지를 드래그하려고하면 이미지의 윤곽선이 포 그라운드로 (즉 캔버스 경계 외부로) 볼 수 있습니다. dragHandler에게 캔바스 경계 밖의 "움"잡힌 이미지를 자르라고 말합니까?플렉스 드래그 앤 드롭

+0

당신이 dragImage를 지정했다면 효과가있을 것이라고 생각합니다. comp.vi의 시각적 영역을 사용하여 dragImage를 "즉석에서"작성해야합니다. 더 깊이있는 대답을 함께 할 시간이 없습니다. – JeffryHouser

답변

0

내장 된 드래그/드롭 플렉스 물건을 사용한 경험으로 캔버스에서 구성 요소를 움직이는 것과 관련하여 과장되었습니다.

내 생각에 이렇게 쉬운 방법은 아래로 마우스를 들어 올리거나 캔버스에서 직접 이미지를 움직이는 것입니다.

이미지에서 마우스를 감지하면 마우스 이동을위한 수신기를 추가합니다 (프로 팁 : addEventListener를 호출 할 때 useCapture를 true로 설정하고 마우스의 위치를 ​​이미지의 원본을 기준으로 저장해야합니다). 그런 다음 마우스를 움직일 때마다 캔버스에서 이미지의 위치를 ​​변경하십시오 (마우스를 사용하여 저장 한 이미지 내에서의 마우스 위치를 고려하십시오). 마우스 업이 발생할 때까지이 작업을 계속 한 다음 마우스 이동 수신기를 제거하십시오.

사용자가 캔버스 외부로 또는 브라우저 창 외부로 드래그하면 어떻게 될지 더 자세히 설명 할 수있는 몇 가지 추가 세부 사항이 있지만 시작하면됩니다.

희망이 있습니다.

+0

다른 SWF에서 캔바스를 포함하는 또 다른 방법을 생각했습니다. 이미지의 경계가 넘치지 않을 것입니다. 그게 효과가있을 수 있습니다 ... 이미지의 크기를 조정하는 접근 방식을 사용하면 상황이 매우 느려질 수 있습니다 .... – griffin