2009-04-09 52 views
0

我有一个嵌入在ATL窗口中的Flash播放器(flash9.ocx),并将编码功能嵌入到swf中,以响应正在按下的返回/回车键。 独立swf播放器可以正常工作,但只要从我的嵌入式播放器播放,它就不会执行。就好像我的窗户以某种方式阻碍了你的行为? 有没有办法将按键传递给玩家?如果您有任何关于表格的信息,请点击这里。将“enter key”事件传递给ATL窗口中的flash播放器?

谢谢!

+0

只是好奇,你能精确地知道ATL是什么吗? – 2009-04-09 15:00:54

回答

0

我不是VC++开发人员,但我使用Flash很多。

虽然不确定,但似乎嵌入式播放器并没有重点。请确保你有这部分涉及对事物的Flash端:

  • 阶段存在(你的电影了正确的初始化)
  • 你的KeyboardEvent监听器设置阶段。

您可以使用FocusManager,以确保你有关注的焦点。

我不知道你是否可以通过tabIndex或其他东西将焦点从你的应用程序传递给SWF OLE。

如果仍然不起作用,您可以尝试使用External Interface将应用程序的回调添加到Flash播放器(基本上可以从您的应用程序调用和执行actionscript功能)。

此前通过fscommand实现,但外部接口似乎是现在使用的东西。

祝你好运!

0

我不使用Flash很多,但我是一个C++程序员。 =) 让我们看看我能否帮助你。 我相信你的应用程序在你的Flash动画之前捕捉所有的事件。我不知道是否有更好的方法来做到这一点,但您可以侦听窗体上的任何键盘事件,并使用ActiveX组件的SetVariable在Flash中设置变量。然后,在Flash Movie中,您可以设置一个监视器来对此变量进行任何更改并触发Enter事件。

希望这会有所帮助。