吉吉于

C#每天抄一点(28):SWF播放器

能写这个还是比较爽的,虽然功能的基本实现不是自己写的,是人家微软给搞好的。

暑假快开学的那几天在看C#的视频,但是下载下来用各种播放器,不是不能播放就是不能暂停,导致我一边视频一边截图,后抄之代码。

反正此刻心情好了很多。

弄这个东西,需要几个文件,Interop.ShockwaveFlashObjects,AxInterop.MSComctlLib,AxShockwaveFlashObjects。

刚开始不能运行程序,缺少Aximp.exe,后下载Windows SDK解决。也希望能为学习之友减少不必要的麻烦。

后几篇文章也会用到类似的文件。在项目里添加引用即可,如下图:

 

 

001 /*
002 * 由SharpDevelop创建。
003 * 用户: Lazynight
004 * 日期: 2011/10/26
005 * 时间: 20:18
006 *
007 * 要改变这种模板请点击 工具|选项|代码编写|编辑标准头文件
008 */
009 using System;
010 using System.Collections.Generic;
011 using System.Drawing;
012 using System.Windows.Forms;
013
014 namespace Lazy28_swf播放器
015 {
016     /// </span>
017     /// Description of MainForm.
018     /// </summary>
019     public partial class MainForm : Form
020     {
021         public MainForm()
022         {
023
024             InitializeComponent();
025
026         }
027
028         void MainFormLoad(object sender, EventArgs e)
029         {
030
031         }
032
033         void Button1Click(object sender, EventArgs e)
034         {
035             openFileDialog1.Filter=“*.swf|*swf”;//打开文件类型
036             openFileDialog1.ShowDialog();//显示打开对话框
037             if(this.openFileDialog1.FileName.Trim()==“”)
038                 return;
039             try
040             {
041                 this.axShockwaveFlash1.Movie=this.openFileDialog1.FileName;
042                 //浏览flash 文件
043             }
044             catch
045             {
046                 //提示对话框
047                 MessageBox.Show(this,“打开Flash文件错误~”,“提示”,MessageBoxButtons.OK,MessageBoxIcon.Information);
048             }
049         }
050
051         void Button2Click(object sender, EventArgs e)
052         {
053             if(this.openFileDialog1.FileName.Length>)
054             {
055                 this.axShockwaveFlash1.Play();//播放动画
056             }
057             else
058             {
059                 MessageBox.Show(this,“请选择要播放的Flash动画~”,“提示”,MessageBoxButtons.OK,MessageBoxIcon.Information);
060             }
061         }
062
063         void Button3Click(object sender, EventArgs e)
064         {
065             if(this.openFileDialog1.FileName.Length>)
066             {
067                 this.axShockwaveFlash1.Stop();//停止播放动画
068             }
069             else
070             {
071                 MessageBox.Show(this,“请选择要播放的Flash动画~”,“提示”,MessageBoxButtons.OK,MessageBoxIcon.Information);
072             }
073         }
074
075         void Button4Click(object sender, EventArgs e)
076         {
077             if(this.openFileDialog1.FileName.Length>)
078             {
079                 this.axShockwaveFlash1.Back();//播放上一帧动画
080             }
081             else
082             {
083                 MessageBox.Show(this,“请选择要播放的Flash动画~”,“提示”,MessageBoxButtons.OK,MessageBoxIcon.Information);
084             }
085         }
086
087         void Button5Click(object sender, EventArgs e)
088         {
089             if(this.openFileDialog1.FileName.Length>)
090             {
091                 this.axShockwaveFlash1.Forward();//播放下一帧动画
092             }
093             else
094             {
095                 MessageBox.Show(this,“请选择要播放的Flash动画~”,“提示”,MessageBoxButtons.OK,MessageBoxIcon.Information);
096             }
097         }
098
099
100         void AxShockwaveFlash1Enter(object sender, EventArgs e)
101         {
102             this.BackColor=Color.Black;
103         }
104     }
105 } </div>   下载源码 转载请注明:[于哲的博客][1] » [C#每天抄一点(28):SWF播放器][2] [1]: http://lazynight.me [2]: http://lazynight.me/687.html