VB与Flash联合打造你的魅力程序
天津 黄兴
在软件开发的过程中,为了提高软件的商品化程度,许多开发人员都在努力使自己开发的程序界面更加的美观,但除了简单的使用图片和底纹,还有没有更好的方法呢?Flash是一种矢量格式的动画文件, 可以包含动画,声音,超文本链接,而文件的体积却很小,在网页上使用Flash可以做出很漂亮动态菜单条。那么Flash可不可以加入到应用程序中而起到美化程序的作用呢?经过一番研究,Flash不仅仅可以插入到程序中起到美化的作用,而且可以通过FSCommand命令与VB应用程序进行交互!也就是说你的应用程序的按钮再也不会是灰灰的那样的死板,而是颇具魅力的动画了!怎么样,动心了吧?那好,随我来一起让VB和Flash联合起来,打造我们的魅力程序!
(一) 在VB中播放Flash动画
怎样才能在VB中加入Flash动画呢?我们只要使用Flash5自带的Shockwave Flash.ocx这个控件就可以了。方法如下:
1. 打开VB6.0,新建一个工程,在工具箱上单击右键,选择Components…,在部件窗口的控件列表中选择Shockwave flash,然后确定,Flash控件就被加到工具箱上。
![](/images/load.gif)
2.选择工具箱上的Flash控件,放到窗体上并调整好大小;
3.在Form_Load()过程中加入如下代码:
Private Sub Form_Load()
ShockwaveFlash1.Movie = “D:\test.swf”
'这里写上你的Flash文件目录
ShockwaveFlash1.Menu = False
ShockwaveFlash1.Playing = True
End Sub
其中,ShockwaveFlash1.Movie是用来指定你要播放的Flash动画的目录;ShockwaveFlash1.Menu是用来指定是否在Flash动画播放中封闭右键菜单,True为能够显示菜单,False为封闭右键菜单;ShockwaveFlash1.Playing = True是让动画播放。
好了,按F5看看吧,是不是程序中的Flash动画能播放了? :)
(二) 在Flash中控制VB程序实现交互
现在Flash动画已经能在VB程序中播放了,那么怎么实现在Flash中控制VB的程序从而实现交互式的操作呢?本文的重点也在于此。
首先我们先来了解Flash中控制VB程序的基本原理:在Flash的ActionScript里面有个叫做FSCommand()的函数,它的主要功能就是发送FScommand命令,例如使动画全屏播放,隐藏动画菜单,更重要的就是可以与外部文件和程序进行通信。而在VB程序中,我们就是利用的Shockwave flash控件的FSCommand()过程来完成这一通信过程,实现信息发送的功能,并且根据发送出来的不同的命令及参数来实现对VB程序的控制。
明白了吧?简单的说,我们就是利用Flash中的FSCommand()函数向VB发送命令,利用Shockwave Flash控件来接受这个命令,从而达到Flash控制VB程序的目的。
好了,现在知道了原理,我们就一步一步来实现吧!
1. 首先要打开Flash5制作一个交互按钮,并在按钮上面加上如下代码:
![](/images/load.gif)
on (release) {
fscommand ("Send Action");
//发送Send Action这个命令
}
这个命令的作用是当按下按钮后Flash向VB发送出名为”Send Action”的命令。当然,这个命令的名字在实际应用中可以叫做其他的任何名字。
2. 将Flash导出成为swf文件,如文章第一部分所述插入到VB6.0中,下面就是VB怎么接受这个命令的事情了;
3. 在窗体上双击Shockwave Flash控件,进入代码编辑窗口,加入如下语句
![](/images/load.gif)
Private Sub ShockwaveFlash1_FSCommand(ByVal command As String, ByVal args As String)
If command = "Send Action" Then
msg = MsgBox("Flash与VB成功结合了!", vbApplicationModal, "成功了!")
'当接到Send Action命令的时候
'这里加入你需要的程序
End If
End Sub
其中,ShockwaveFlash1_FSCommand这个过程是专门用来接收Flash发送的FSCommand命令的,其中第一个参数command就是与Flash发送过来的命令相对应的,当其一致的时候,则执行后面的程序(本例中是弹出MsgBox)。好了,看看程序运行的结果吧:
![](/images/load.gif)
Yeah!成功了!:)
怎么样,通过本文你是不是完全掌握了Flash与VB的结合?这里,你只要把Then后面要执行的语句段变为你自己想要实现的程序,那么Flash中的动画按钮就能实现所有强大的VB功能了!
快去吧,再也不要那些死板的灰色按钮,加上你的炫目多彩的动画按钮,打造出你的魅力程序!
如有好的意见可与我联系:dennis_xing@163.com