一.摘要
多功能播放器主要采用了 textbox listbox openfiledialog folderbroserdialog backgroundworker button axmediaplayer这几个主要控件 其中mediaplayer是一个重中之重的控件,功能强大,可以兼容视频与音频,是本程序的核心部分,也是我设计理念的源头。
二.功能实现
本程序的主要的技术设计思想是实现音频与视频播放的兼容,以及进行互联网帮助的联机功能,打开指定路径(本地或者网络)中的视频实现网络播放功能,以及对目标文件的选择,在列表中的删除清空功能,可以说是一个功能比较齐全满足平常使用的产品。
三.关键技术
1.设置窗体的背景
this.BackgroundImage = Image.FromFile("F:\\u=670294317,3742917561&fm=116&gp=0[1].jpg");//设计程序的背景图案
2.添加文件进入listbox中
DialogResult pathok;
pathok = folderBrowserDialog1.ShowDialog();//显示选择目录对话框
if (pathok == DialogResult.OK)//如果点击ok则获取目录内文件
{
string[] allfile = Directory.GetFiles(folderBrowserDialog1.SelectedPath);//获取目录内所有文件
foreach (string file in allfile)
{
if (System.IO.Path.GetExtension(file) == ".mp4")//如果文件是.mp4
{
listBox1.Items.Add(Path.GetFileName(file));//把文件添加到listBox1里
3.筛选文件进入listbox中
openFileDialog1.Filter = "*.mp4|*.mp4";//筛选.mp4格式文件
if (this.openFileDialog1.ShowDialog() == DialogResult.OK)
{
string path = this.openFileDialog1.FileName;
FileInfo f = new FileInfo(path);//创建一个文件路径
this.listBox1.Items.Add(f.FullName);//添加文件进入listBox1
}
4.删除列表中文件
this.listBox1.Items.Remove(this.listBox1.SelectedItem);//删除选中项
5.清空列表
this.listBox1.Items.Clear();//清空listBox1窗口
6.添加菜单以及设置超级链接
private void 帮助ToolStripMenuItem_Click(object sender, EventArgs e)
{
System.Diagnostics.Process.Start("IEXPLORE.EXE", "www.baidu.com");//对于联机帮助按钮加一个超级链接
7.读取textbook中的文件URL路径,打开路径中的文件
private void button5_Click(object sender, EventArgs e)
{
axWindowsMediaPlayer1.URL = this.textBox2.Text;//读取textbook2中的地址文档
axWindowsMediaPlayer1.Ctlcontrols.play();//打开指定地址的视频文件
}
四.设计感悟
头几天的设计一点头绪也没有,慢慢的看了一些老师的视频渐渐领悟了控件的使用方法。想入手做一个播放器,有两种选择,一种是用系统自带的mediaplayer控件,一种是自己编写程序,但第二种难度略大,然后我发现这个控件可以兼容播放视频与音频文件,所以就萌生了做一个多功能播放器的念头,之后又逐渐添加了一些实用的小功能,比如说播放指定网址的视频,还有做一个菜单栏可以打开常用网页(百度)的功能等等,期间folderBrowserDialog控件对我造成了很大的干扰,参考别人的代码,用缩写的fbdialog总是出现错误,最后用全称才解决问题。编程之中的体会是很深刻的,做完之后发现自己用双份(视频,音频)代码是完全可以用一份稍作修改便可,openFileDialog folderBrowserDialog listBox button控件我都用了双份,是有些冗杂的,但着实凝聚了自己不少的心血,当看到播放器成功工作时,心中的兴奋之情还是难以言表的。回过头来看,其实这个程序也很简单,但我还记得最开始入手时的迷茫无助,对编程的架构与设计一点感觉都没有,凭借着一点一滴的摸索探路,当真正做好时,从中的收获是非常多的,现在的心情只能用苏子的”回首向来萧瑟处,也无风雨也无晴“来表达吧。
如果有需要源码的可以私戳我,测绘大二学生,还望读者多多指教。
五.参考资料
http://blog.youkuaiyun.com/wenjie0728/article/details/4065142
2.C# Movie Player
http://www.codeproject.com/Articles/18552/C-Movie-Player
3.c#万能播放器
http://download.chinaitlab.com/program/files/24237.html
4.百度知道c#中如何实现超链接?
5.百度知道C#代码如何在网页中引用视频
6.老师的博客