如何在C#中播放AVI短片并使背景透明
在C#编程的时候,由于一个功能需要播放一小段的AVI格式的短片,结果找了半天也没有搞定如何来进行播放。于是本人在网上查呀查呀!找了半天终于找到了一个方法播放文件。
他的方式是首先用下面的命令为媒体播放器控件:msdxm.ocx 生成 MediaPlayer.dll 和 AxMediaPlayer.dll。命令为:aximp c:\winnt\system32\msdxm.ocx 而通常msdxm.ocx中的ActiveX控件都未注册! 再运行regsvr32 msdxm.ocx手动注册便生成需要的动态连接库文件。
但是我发现他所用的MediaPlayer控件是可以播放许多的媒体文件.但是并不能满足我所需要的情况。我的情况是用C#播放一小段AVI文件,并且背景要透明,而不是黑色,或其他颜色,我找了半天也不能找到什么方法可以使MediaPlayer播放的文件为透明的状态,十分郁闷!
但是随后我发现其他用VB的程序中可以实现这个功能,让我十分的高兴,于是我又打开了VB的代码进行了详细的查看,发现在VB中有一个控件为Animation可以播放AVI文件,而且其有一个属性选项是使背景透明。正好能够满足我的需要.可是这也是一个OCX的控件,于是,我先把该控件找到,位置是:C:\WINDOWS\SYSTEM32\COMCT32.ocx,然后我运行regsvr32进行手动注册,注册完毕以后我就在环境中进行引用,如下图:
(但是,后来本人发现原来这个根本不用regsvr32注册,因为.NET早已经注册了,郁闷中~~~~~~~~~~~~~~)
然后把控件拖入到窗体中,布好了局,将其属性AutoPlay设置为true,然后在代码中写入下边一句话即可:
private void Form1_Load(object sender, System.EventArgs e)
{
this.axAnimation1.Open(Application.StartupPath + @"\FILECOPY.AVI");
}
这样当窗体加载的时候就会自动的播放这一小段AVI文件了.
其实,这个问题并不是很难,主要是本人对COM组件并不是特别熟悉的过.只要熟悉这些组件的功能,以及运行的原理,势必会大大的提高我们的编程的效率。
本文来自博客园,作者:古道轻风,转载请注明原文链接:https://www.cnblogs.com/88223100/archive/2009/03/19/1416368.html
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】博客园社区专享云产品让利特惠,阿里云新客6.5折上折
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
· 没有源码,如何修改代码逻辑?
· 一个奇形怪状的面试题:Bean中的CHM要不要加volatile?
· [.NET]调用本地 Deepseek 模型
· 一个费力不讨好的项目,让我损失了近一半的绩效!
· 在鹅厂做java开发是什么体验
· 百万级群聊的设计实践
· WPF到Web的无缝过渡:英雄联盟客户端的OpenSilver迁移实战
· 永远不要相信用户的输入:从 SQL 注入攻防看输入验证的重要性
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析