2009-04-09 2 views
0

나는 ATL 윈도우에 내장 된 플래시 플레이어 (flash9.ocx)를 가지고 있으며 반환 된/엔터 키를 눌렀을 때 응답하기 위해 swf에 기능을 코딩했다. 독립 실행 형 swf 플레이어에서 제대로 작동하지만 내장 플레이어 내에서 재생되자 마자 실행되지 않습니다. 내 창문이 어찌 되었든 마치? 키 누르기를 플레이어로 전달할 수있는 방법이 있습니까?"enter key"이벤트를 ATL 창에서 플래시 플레이어로 전달 하시겠습니까?

참고로 양식에 이상한 점은 없습니다.

감사합니다!

+0

궁금한 점이 있으시면 ATL이란 무엇입니까? –

+0

액티브 템플릿 라이브러리 http://en.wikipedia.org/wiki/Active_Template_Library –

답변

0

저는 VC++ 개발자가 아니지만 플래시를 많이 사용합니다.

확실하지 않지만 임베디드 플레이어는 포커스가없는 것으로 보입니다. 당신이 일의 플래시 측면에 적용이 부분을 가지고 있는지 확인하십시오 :

  • 단계가 존재
  • 당신이 무대에 KeyboardEvent입니다 리스너를 설정합니다 (영화가 제대로 초기화된다).

FocusManager을 사용하여 집중할 수 있습니다.

일부 탭 인덱스를 통해 응용 프로그램에서 SWF OLE로 포커스를 전달할 수 있는지 여부는 알 수 없습니다.

여전히 작동하지 않는 경우 External Interface을 사용하여 앱의 콜백을 플래시 플레이어에 추가 할 수 있습니다 (기본적으로 앱의 call 및 actionscript 기능).

이것은 이전에 fscommand을 통해 달성되었지만 외부 인터페이스가 지금 사용하는 것으로 보입니다.

행운을 빈다.

0

플래시를 많이 사용하지 않지만 저는 C++ 프로그래머입니다. =) 내가 당신을 도울 수 있는지 보자. 귀하의 애플리케이션이 귀하의 플래시 무비 이전의 모든 이벤트를 포착하고 있다고 생각합니다. 이 작업을 수행하는 더 좋은 방법이 있는지 모르겠지만 폼의 키보드 이벤트를 수신하고 ActiveX 구성 요소의 SetVariable을 사용하여 Flash 내에서 변수를 설정할 수 있습니다. 그런 다음 Flash 무비에서이 변수에 대한 변경 사항을 감시하고 Enter 이벤트를 트리거 할 수 있습니다.

희망이 도움이됩니다.

관련 문제