vb.net与FLASH的完美结合

 
(一)   在VB.net中播放Flash动画

    怎样才能在VB.net中加入Flash动画呢?我们只要使用Flash5自带的Shockwave Flash.ocx这个控件就可以了。方法如下:

1.  打开VB.net,新建一个工程,在工具箱上单击右键,选择"添加…",在com窗口的控件列表中选择Shockwave flash,然后确定,Flash控件就被加到工具箱上。

2.选择工具箱上的Flash控件,放到窗体上并调整好大小;

 
3.在Form_Load()过程中加入如下代码:

 ShockwaveFlash1.Movie = “D:\test.swf” '这里一定要写绝对地址,其实只要把FLASH文件放到你程序的bin目录里,生成后自然变成相对路径  

'这里写上你的Flash文件目录

 ShockwaveFlash1.Menu = False

 ShockwaveFlash1.Playing = True

 
其中,ShockwaveFlash1.Movie是用来指定你要播放的Flash动画的目录;ShockwaveFlash1.Menu是用来指定是否在Flash动画播放中封闭右键菜单,True为能够显示菜单,False为封闭右键菜单;ShockwaveFlash1.Playing = True是让动画播放。
(二)   在Flash中控制VB.net程序实现交互

 

   现在Flash动画已经能在VB.net程序中播放了,那么怎么实现在Flash中控制VB的程序从而实现交互式的操作呢?本文的重点也在于此。

    首先我们先来了解Flash中控制VB程序的基本原理:在Flash的ActionScript里面有个叫做FSCommand()的函数,它的主要功能就是发送FScommand命令,例如使动画全屏播放,隐藏动画菜单,更重要的就是可以与外部文件和程序进行通信。而在VB程序中,我们就是利用的Shockwave flash控件的FSCommand()过程来完成这一通信过程,实现信息发送的功能,并且根据发送出来的不同的命令及参数来实现对VB.net程序的控制。

明白了吧?简单的说,我们就是利用Flash中的FSCommand()函数向VB发送命令,利用Shockwave Flash控件来接受这个命令,从而达到Flash控制VB.net程序的目的。

好了,现在知道了原理,我们就一步一步来实现吧!

1.  首先要打开Flash制作一个交互按钮,并在按钮上面加上如下代码:

on (release) {

    fscommand ("Send Action");

    //发送Send Action这个命令

}
这个命令的作用是当按下按钮后Flash向VB发送出名为”Send Action”的命令。当然,这个命令的名字在实际应用中可以叫做其他的任何名字。

2. 将Flash导出成为swf文件,如文章第一部分所述插入到VB.net中,下面就是VB.net怎么接受这个命令的事情了;

3.  在窗体上双击Shockwave Flash控件,进入ShockwaveFlash1_FSCommand事件中,在此事件中加入:

If e.command = "Send Action" Then

MsgBox("Flash与VB.net成功结合了!", vbApplicationModal, "成功了!")

'当接到Send Action命令的时候

'这里加入你需要的程序

End If


 

其中,ShockwaveFlash1_FSCommand这个过程是专门用来接收Flash发送的FSCommand命令的,其中第一个参数command就是与Flash发送过来的命令相对应的,当其一致的时候,则执行后面的程序(本例中是弹出MsgBox)。
posted @ 2006-04-22 10:07  阿东工作室  阅读(481)  评论(1编辑  收藏  举报