C#中实现视频播放器窗体程序(附源码下载)
生活随笔
收集整理的這篇文章主要介紹了
C#中实现视频播放器窗体程序(附源码下载)
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
場景
效果
?
實現
新建窗體程序,然后從工具箱中拖拽DataGridView控件,然后在控件右上角點擊新增列,設置好每列
的Name屬性和Headertext屬性。
?
?
新建Video類
項目-右擊-新增-類
using System; using System.Collections.Generic; using System.Linq; using System.Text;namespace MyPlayer {class Video{public Video(string id, string name, string path){this.ID = id;this.Name = name;this.Path = path;}//編號public string ID { get; set; }//名稱public string Name { get; set; }//路徑public string Path { get; set; }} }初始化播放列表
首先聲明一個全局的視頻列表對象
? List<Video> videoList = new List<Video>();然后在窗體的構造方法中添加初始化播放列表的方法。
其位置
?
在Init方法中
?
public void Init(){videoList.Add(new Video("1", "前言", @"F:\全網首個微信小程序開發視頻教程\1.0前言.mp4"));videoList.Add(new Video("2", "課程介紹", @"F:\全網首個微信小程序開發視頻教程\1.1課程介紹,定個小目標.mp4"));videoList.Add(new Video("3", "開發文檔", @"F:\全網首個微信小程序開發視頻教程\1.2開發文檔簡讀,了解全貌.mp4"));//設置DataGridView的數據源UpdateDgv();}這里視頻采用的是本地絕對路徑的視頻。
播放列表添加完之后,將視頻列表賦值給DataGridView。
??????? public void UpdateDgv(){//設置DataGridView的數據源this.dgvVedioList.DataSource = videoList;}其中dgvVedioList就是對應的DataGridView控件的name屬性。
新建播放頁面
項目-右鍵-添加-Windows窗體
然后在工具箱中拖拽一個WindowsMediaPlayer組件。
VS2013工具箱中使用WindowsMediaPlyer控件:
https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/details/99681215
添加播放組件后
?
編寫其Play方法
using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; using System.Windows.Forms; namespace MyPlayer {public partial class FrmPlayer : Form{//獨一無二的實例private static FrmPlayer uniquePlayer;//私有構造函數private FrmPlayer(){InitializeComponent();}//檢查并創建唯一實例public static FrmPlayer GetInstance(){if (uniquePlayer == null){uniquePlayer = new FrmPlayer();}return uniquePlayer;}//播放節目public bool Play(string videoPath){try{//播放成功后返回truethis.wmp.URL = videoPath;return true;}catch (Exception ex){//播放器異常返回falseMessageBox.Show("播放器異常" + ex.Message);return false;}}//關閉過程中將實例引用設為nullprivate void FrmPlayer_FormClosing(object sender, FormClosingEventArgs e){FrmPlayer.uniquePlayer = null;}private void wmp_Enter(object sender, EventArgs e){}} }?
配置右鍵菜單
回到播放列表的頁面,拖拽一個ContextMenuStrip組件,設置右鍵播放菜單。
然后將DataGridView與之關聯。具體可參照如下:
C# Winform程序中DataGridView中使用ContextMenuStrip實現右鍵菜單:
https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/details/99680453
配置右鍵菜單的點擊事件
?private void tsmiPlayer_Click(object sender, EventArgs e){//獲取播放路徑string videoPath = this.dgvVedioList.CurrentRow.Cells["path"].Value.ToString();if (!File.Exists(videoPath)){MessageBox.Show("文件不存在!","提示");return;}//創建單例--視頻播放頁面窗體FrmPlayer myPlayer = FrmPlayer.GetInstance();bool result = myPlayer.Play(videoPath);if (result){//顯示myPlayer.Show();}else{//釋放myPlayer.Dispose();}}?
總結
以上是生活随笔為你收集整理的C#中实现视频播放器窗体程序(附源码下载)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: VS2013工具箱中使用WindowsM
- 下一篇: C#中在窗体应用中使用StringBui