資源簡介
基于VLC的C#播放器源碼
實現的功能:
1:打開播放的音視頻文件((1)菜單欄“文件”->“打開”,(2)工具欄(下面)“打開”(3)播放器右鍵->打開)
2:暫停,繼續播放,停止音視頻文件
3:進度條和右下角文本框顯示播放進度
4:拖動進度條對視頻定位播放
5:工具欄(下面)“快進”,“快退”均為5s
6:音量調節
7:菜單欄“文件”下可記錄最近播放的三個文件
8:在有記錄的情況下,初始狀態時雙擊視頻播放區或單擊“播放”播放上次關閉時播放的視頻
代碼片段和文件信息
using?System;
using?System.Collections.Generic;
using?System.ComponentModel;
using?System.Data;
using?System.Drawing;
using?System.Linq;
using?System.Text;
using?System.Threading.Tasks;
using?System.Windows.Forms;
using?System.IO;
namespace?WindowsFormsApplication1
{
????public?partial?class?Form1?:?Form
????{
????????string?address;
????????private?VlcPlayer?vlcPlayer;
????????private?bool?is_playinig;
????????private?bool?media_is_open;//標記媒體文件是否打開,若未打開則tsbtn_play讀ini打開之前的文件,若打開則跳過這步(避免每次都打開文件造成屏幕跳動)
????????public?Form1()
????????{
????????????InitializeComponent();
????????????address?=?Environment.CurrentDirectory;
????????????
????????}
????????private?void?Form1_Load(object?sender?EventArgs?e)
????????{
????????????label_media_name.Hide();
????????????if?(!File.Exists(address?+?“\\Menu.ini“))
????????????{
????????????????FileStream?fs?=?new?FileStream(address?+?“\\Menu.ini“?FileMode.Create?FileAccess.Write);
????????????????fs.Close();
????????????}
????????????string?pluginPath?=?System.Environment.CurrentDirectory?+?“\\plugins\\“;
????????????vlcPlayer?=?new?VlcPlayer(pluginPath);
????????????IntPtr?render_wnd?=?this.panel1.Handle;
????????????vlcPlayer.SetRenderWindow((int)render_wnd);
????????????
????????????tbVideoTime.Text?=?“00:00:00/00:00:00“;
????????????is_playinig?=?false;
????????????media_is_open?=?false;
????????????trackBar2.Value?=?50;
????????????this.Size?=?new?Size(800?600);?
???????????//?readFilePath();
????????}
????????///?
????????///?菜單欄文件實現功能
????????///?1?打開待播放文件
????????///?2?記錄歷史信息
????????///?3?歷史信息最多不超過3條
????????///?4?點擊歷史信息可以實現播放menuitem_Click()
????????///?5?如果點擊歷史信息不能播放(出現錯誤)則刪除該歷史信息item和Menu.ini?(方法:try?catch)
????????///?6?Menu.ini記錄的信息最多不超過3條不重復記錄
????????///?7?在歷史信息中右鍵可以選擇刪除
????????///?
????????///?
????????///?
????????///?
????????#region?菜單欄-文件
????????///?
????????///?打開ToolStripMenuItem_Click
????????///?打開文件并將文件目錄添加到Menu.ini
????????///?若打開相同文件則不添加(這個有Bug這樣的話按tsBtn_play打開的就不是上一個了,因為打開相同的不添加)
????????///?若記錄行數超過3個,則先記錄后三個數據,再重新建一個Menu.ini(清除數據)接著講記錄的后三個數據寫入
????????///?
????????///?
????????///?
????????///?
????????private?void?打開ToolStripMenuItem_Click(object?sender?EventArgs?e)
????????{
????????????//bool?isSame?=?false;
????????????openFileDialog1.FileName?=?““;
????????????if(this.openFileDialog1.ShowDialog()==DialogResult.OK)
????????????{?
????????????????//StreamReader?sr0?=?new?StreamReader(address?+?“\\Menu.ini“?true);
???????????????//?while?(sr0.Peek()?>?-1)
???????????????//?{
??????????????//??????if?((sr0.ReadLine()?==?openFileDialog1.FileName)|(openFileDialog1.FileName==““))
??????????????//??????{
??????????????//??????????isSame?=?true;
???????????????//?????}
??????????????//??}
???????????????//?sr0.Close();
???????????????//?if?(is
?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
????..A..H.?????36864??2016-04-24?22:21??mediaPla
?????文件???????1023??2016-04-25?09:50??mediaPla
????..A..H.?????36864??2016-04-25?09:31??mediaPla
????..A..H.?????62464??2016-04-28?10:21??mediaPla
?????文件????????187??2016-04-24?19:47??mediaPla
?????文件??????53760??2016-04-24?19:49??mediaPla
?????文件?????330752??2016-04-25?09:50??mediaPla
?????文件?????143296??2015-04-13?21:57??mediaPla
?????文件????2631616??2015-04-13?22:00??mediaPla
?????文件????????115??2016-04-28?09:38??mediaPla
?????文件?????114112??2015-04-13?21:57??mediaPla
?????文件??????88512??2015-04-13?21:57??mediaPla
?????文件?????115136??2015-04-13?21:57??mediaPla
?????文件??????22464??2015-04-13?21:57??mediaPla
?????文件?????637238??2015-04-13?21:56??mediaPla
?????文件?????171968??2015-04-13?21:58??mediaPla
?????文件?????554944??2015-04-13?21:57??mediaPla
?????文件?????265152??2015-04-13?21:58??mediaPla
?????文件?????245184??2015-04-13?21:57??mediaPla
?????文件?????166848??2015-04-13?21:57??mediaPla
?????文件??????55744??2015-04-13?21:57??mediaPla
?????文件??????98752??2015-04-13?21:57??mediaPla
?????文件?????127936??2015-04-13?21:57??mediaPla
?????文件??????22976??2015-04-13?21:57??mediaPla
?????文件??????56768??2015-04-13?21:57??mediaPla
?????文件????2158528??2015-04-13?21:57??mediaPla
?????文件?????720832??2015-04-13?21:58??mediaPla
?????文件??????52672??2015-04-13?21:57??mediaPla
?????文件?????534976??2015-04-13?21:57??mediaPla
?????文件??????29632??2015-04-13?21:57??mediaPla
............此處省略751個文件信息
- 上一篇:C#高級編程第8版,中文完整掃描版
- 下一篇:C#入門經典(第7版).zip
評論
共有 條評論