利用COM晚期绑定技术,实现Winform中播放Flash的功能

小孩正处学习新事物的阶段,每天拿着很多卡片来识字识物,甚是有趣。有一天,我突发奇想,如果能用电脑动画来播放一些动画片段来帮助小孩提高记忆,那倒是不错的想法。动画最近肯定是使用Flash来处理了,快捷并且声色俱全,可以提高学习的兴趣。于是着手在Winfrom中嵌入Flash来播放,实现动画的效果,经过一番努力,终于成型,先看看程序的效果。

 

这个程序和一般操作方式不同,不是直接应用Fash的COM组件进行操作,而是通过接口的晚期绑定来实现对Flash的调用,因此项目工程没有Flash的COM组件的应用的,虽然最终还是需要客户端安装Flash播放器,但是提供了比较好的操作方式,并且这里已经把Fash模块封装成了一个控件,拖拽过来就可以使用了。

 

使用代码如下所示:

    public partial class Form1 : Form

    {

        public Form1()

        {

            InitializeComponent();

            

        }

        private void Play()

        {

            string file = Path.Combine(Application.StartupPath, "demo.swf");

            if (File.Exists(file))

            {

                this.flashPlayer1.LoadMovie(0, file);

            }

            this.flashPlayer1.Play();

        }

        private void btnPlay_Click(object sender, EventArgs e)

        {

            Play();

        } 

设计时刻的窗体效果如下所示,Flash控件就是一个Panel类型的控件,白色的部分就是。

 

运行效果就如开始的图片一样,整个控件使用起来非常方便,唯一不足的就是不能控制Flash的停止或者重新播放的操作,Flash一旦开始就没法通过接口来实现控制了,但可以通过Fash控件的菜单进行适度的控制。

 

本来的构思是在我的网站http://www.iqidi.com上部署一系列的宝宝学习题材,然后通过客户端链接网络,获取最新的学习题材链接,在客户端进行播放供天下所有父母的宝宝进行兴趣学习,父母在旁边进行讲解的。 由于时间关系,以及实现对Flash的加密保护处理较为麻烦点,这些东西没能来得及实现暂时搁置,先给大家一个例子尝鲜,呵呵。

例子下载地址:http://files.cnblogs.com/wuhuacong/TestFlashPlayer.rar 

本文转自博客园伍华聪的博客,原文链接:利用COM晚期绑定技术,实现Winform中播放Flash的功能,如需转载请自行联系原博主。

时间: 2024-09-17 03:32:09

利用COM晚期绑定技术,实现Winform中播放Flash的功能的相关文章

winform中嵌入flash(EmbedMovie属性)

问题描述 用winform加载FLASH,然后想让FLASH以winform为容器,储存在里面,用过EmbedMovie属性,内嵌但是却没有任何效果?请问是怎么回事?? 解决方案 解决方案二:要在c#winform程序里嵌入FLASH,其实就是直接引用Flash的ocx控件.那你就需要使用"COM组件"ShockwaveFlashObject.不过这个"Flash.ocx"控件不能直接在"COM组件"窗口中找到..需要我们手动添加,选择菜单中的&

WinForm中播放视频示例(含源码)

1背景 这几天一老友要求我做个小软件,在WinForm播放视频.印象中微软有个WM控件直接可以使用,晚上研究下 2实现方式 2.1微软草根 最简单的方式,是直接使用微软的WM控件,也是通过COM方式集成进来.操作步骤如下 l 工具箱引用 n 在工具箱中新建一Tab页面,命名为Windows Media Player(随意命名).创建成功后,再右键选中该面板,如下图所示 n 选中Com面板,找到如下图所示控件,引用即可 n 引用成功后,如下图所示.工具箱中已存在此控件,直接将此控件拖至页面中即可

Ubuntu系统中播放Flash乱码的解决方法

若所播放的flash里有字体乱码(显示为方块),那么按如下方法解决: 1 在终端里输入sudo gedit /etc/fonts/conf.d/49-sansserif.conf然后回车 2 将倒数第四行 <string>sans-serif</string> 改为 <string>文泉驿正黑</string> 保存即可,重启firefox,flash乱码解决了. 不用http://www.aliyun.com/zixun/aggregation/18137

利用JScript/CSS 编程技术模拟实现TABView控件

标题     利用JScript/CSS 编程技术模拟实现TABView控件    zosatapo(原作)     关键字     JScript CSS TABView 控件 网页设计     利用JScript/CSS 编程技术模拟实现TABView控件[key word] JScript CSS TABView 控件 网页设计[abstract]本文介绍JSCript/CSS编程来模拟实现TABView控件.[Author] zosatapo(CSDN会员)[Email]    dert

用控件工具在WPS表格中插入Flash动画

大家经常用控件工具在PPT中插入Flash动画,经过尝试以后发现在WPS表格中也可以通过控件工具轻松地插入Flash动画,为枯燥的表格增加一点灵动的气息.主要步骤如下: 1.准备好将要插入的Flash动画素材,我要插入的动画素材是C盘根目录下的"精美时钟.swf". 2.运行WPS表格后,在常用工具栏的空白处单击鼠标右键,在弹出菜单中点击"控件工具箱"(如图1). 图1 WPS中调用"控件工具箱" 再单击"控件工具箱"中的&q

WINFORM中绑定对象支持排序功能

在很久很久以前,DataSet操作是.Net中的一个重要使用手段,其实现在也是 . 在很久很久以前,我的项目操作方式是通过数据Fill一个DataSet,之后返回 给业务层做处理,之后给页面去显示. 随着时间积累,越来越不喜欢DataSet,我记得有人跟我说DataTable比 DataSet效率高,我不反驳也不认同,不知道. 我只知道DataSet如果不做任何处理在WebService上传输效率极其低下. 之后的编程模式中引入了对象的概念.至于对象的好处,在此不做论述. 这篇文章主要表述不是对

winform中利用chart动态显示折线图问题

问题描述 winform中利用chart动态显示折线图问题 定时器中代码如下所示: 运行后跑出来结果只有一条蓝色竖的直线,求解问题所在 解决方案 http://blog.csdn.net/shining0/article/details/9358289

C# winform中如何利用shimgvw.dll 编程

问题描述 在C#winform中如何利用shimgvw.dll编程,有没有编程的帮助文档...?急急

Winform中DataGridView绑定IList数据源后的排序的控件

Winform中DataGridView绑定IList数据源后的排序的控件 也是从网上看到的方法,我封装好了 使用方法: 使用方法: IList<Model> aaa = new List<Model>();aaa = Getr();dataGridView1.DataSource = new ZiZhuDi.IListdataGridViewSort.BindingCollection<Model>(aaa); 下载地址:http://download.csdn.ne