<b>示例文件下载:
flash与ppt的交互技术.rar
(298.14 KB, 下载次数: 85)
</b>
<br><br>详细内容见:
如果将PPT看作是一个容器或者载体,就可以在PPT中加载很多东西,比如视频,声音或者Flash。<br><br>其中能够插入Flash是一个很激动人心的功能。关于在PPT中如何插入Flash,并不是本文要探讨的内容。<br><br>人有时候就是这样,在得到一些后,总想得到更多。如果仅仅是单纯的插入Flash,总觉得不够。Flash最擅长的就是交互,如果Flash能后PPT交互该多好!想象一下,各种效果漂亮的Flash按钮在PPT中能直接操控,执行各类动作,就象是ppt自己的按钮一样,那是如何的舒服。
<br><br><br>能不能达到这个要求呢?答案是肯定的,在参考研究了一些案例后,将我自己摸索的经验分享如下:<br><br>解决问题的思路是很重要的,我们来想一下:
如果要Flash和PPT交互,第一当然是要Flash发出命令,然后PPT能接收到这些命令,跟着执行相关动作。<br><br> 思路清晰后,问题就变得简单了。
<br><br>我们先来解决第一个问题:Flash如何能发出命令并让外部程序接收命令?<br><br>这个相对简单,Flash中本身就有一条命令专门发送给外部程序的:<br>fscommand,比如在Flash按钮动作中加上如下代码:
<br>======================
<br>on (release){
fscommand("a2");
}
<br><br>======================
<br>这是一段非常简单的代码,对FLASH稍微有点理解的人都知道。<br>这样点击这个Flash按钮的时候,Flash就会向外部程序发送一个信号,信号的名字是a2,这个a2可以是你任意的字符串,这个就不多说了。<br><br> 接着解决第二个问题:要PPT能接收这个“a2“信息并作出处理。<br> ;PPT中自带的falsh控件Shockwave Flash object,这个控件有其中一个方法FSCommand就是用来接收Flash发出的命令,真是太好了!<br><br>接下来的事情就好办了。<br><br>在这个方法中写下代码做接收和处理就行了,大致如下:<br> ==============================
<br>Private Sub ShockwaveFlash_FSCommand(ByVal command As String, ByVal args As String)
Select Case command
Case "a1" '如果falsh发出的名利是a1
'这里写PPT要做的动作
Case "a2" 如果falsh发出的名利是a1
'这里写PPT要做的动作
<br>.......
End Select
End Sub
==============================
到这里,问题基本解决了,PPT已经能读懂Flash的话了,并且可以执行交互,基本应用没有什么问题了,看来也不是太难。
<br><br>但是,在摸索的过程中还有一些问题是没有解决的:<br><br> 1.上述办法是针对PPT自带的flash插件Shockwave Flash object的,而我们喜欢用的另一个插件Flash Movie并没有提供任何可以编程的方法,也就是说用Flash Movie插入的Flash用上述方法不能和PPT交互。<br><br> 2.在应用某些功能,比如PPT导航播放时,在我实际的测试中有时候会发生错误,是PPT本身的BUG还是什么,不知道。
3.当把Flash嵌入到PPT中的时候,交互就失效了。所以一定要把Flash文件放在外部,虽然问题不大,但毕竟不方便。
这篇文章纯粹是技术帖,写出来的目的是我查了很多资料,几乎没有关于这类的探讨,好像是在黑暗中摸索,希望能有更多的爱好者和技术牛人指点,有更多的方法使Flash和PPT的交互更成熟可靠。
单纯的在PPT中插入一个Flash,意义实在不大,而一旦Flash能和PPT交互,那将是一个新世界。 <br> |