在 loadComplete 之前设置 Flex 中 SWF 的 flashvars
-
20-09-2019 - |
题
我有一个 Flash 小程序,我想将其嵌入到 Flex 文件中,该文件会在 SWF 播放器(Immervision 的 PurePlayer)中加载全景文件 - 我使用以下代码:
<mx:SWFLoader id="mapLoader"
width="740"
height="588"
source="../bin-debug/PurePlayer.swf?flashvars='panorama=../bin-debug/untitled.ivp'" />
小程序加载正常,但它不执行文件...
PurePlayer 文档使用以下变量:全景=myPano.ivp"
如果我通过浏览器窗口加载相同的 SWF,则使用以下 URL 可以正常工作: http://localhost/pureplayer/PurePlayer.swf?panorama=untitled.ivp
解决方案
您是否尝试过在完整的处理程序中播放电影
// Play it
Object(mapLoader.content).play();
您还可以考虑在电影播放完毕后或在 Flash 应用程序中发生基于用户交互时监听事件,方法是在播放之前在 Flex 应用程序的完整处理程序中添加一个事件处理程序。显然,您需要知道 Flash 应用程序将调度的事件类型,但如果机器人应用程序是您的,那应该没问题。
mapLoader.content.addEventListener( "yourFlashEvent", handleYourFlashEvent )
其他提示
您可以在 swf 文件的 URL 中提供全景参数,而不是作为 flashvar,如下所示:
<mx:SWFLoader id="swfLoaderPure"
width="100%" height="100%"
source="../bin-debug/PurePlayer.swf?panorama=myPano.ivp"
complete="onLoadComplete(event)"
/>
不隶属于 StackOverflow