2010-08-12 3 views
0

ActionScript 2에서 드래그/드롭하는 응용 프로그램을 개발했습니다. 잘 작동합니다. 난 내 플렉스 애플리케이션 SWFLoader의 컨테이너에서이 SWF를 넣을 때Draggin AVM1 (ActionScript 1/2)의 삭제가 AVM2 (ActionScript 3/Flex)에서 작동하지 않습니다.

dropObject.hitTest(_root._xmouse, _root._ymouse, true) //if true, drop currently dragging object 

문제가 발생 낙하 테스트하려면 다음을 사용합니다. 드래그하면이 경우 전혀 작동하지 않습니다.

아이디어가 있으십니까?

+0

의견이 있으십니까? – DexTer

+0

이것은 _root와 관련이 있을까요? 다른 VM (Flex 컨테이너)에서 호스팅되는 경우 _root 속성 값이 정상적인 경우와 같지 않을 수 있습니다 ... ???? – DexTer

답변

0

우리는 AVM2 컨테이너에서 AVM1 객체를 넣을 때, AVM1는 시스템이 토스에 간다 좌표입니다. 이를 방지하려면 AVM1의 상단 왼쪽 구석에 더미 스프라이트를 놓고 _root가 아닌 해당 객체와 관련하여 드래그 드롭 검사의 모든 논리를 변경하십시오.

다른 AVM2 모듈에서는 그렇지 않습니다. 그들은 잘 독립 실행 형 및 다른 컨테이너 내에서 작동합니다.

1

AVM1Movie 개체와 AVM2 개체 사이의 상호 운용성 (메서드 호출 또는 매개 변수 사용)이 허용되지 않습니다.

부터 촬영 : (! 또는 발생하지 않음)가 발생하는 이유를 드디어 알아 냈 http://www.adobe.com/livedocs/flash/9.0/ActionScriptLangRefV3/

+0

하지만 저는 어떤 상호 운용성을 사용하지 않고 하나의 VM에서 다른 VM으로 어떤 메소드를 호출하지 않습니다. 나는 SWFLoader에 자체 포함 된 제대로 작동하는 모듈을 실행하고 표시하고 있습니다. – DexTer

+1

나는 상호 운용성을 끌기를 원할 것이다. AVM2 영화에서 AVM1 영화의 끌어서 놓기 방법을 호출하고 있습니다. – PatrickS

관련 문제