axWindowsMediaPlayer制作播放器
根据提供的文件信息,我们可以总结出该段代码是关于如何使用`axWindowsMediaPlayer`控件来创建一个简单的多媒体播放器应用程序。下面将详细解释这段代码所涉及的关键知识点。 ### 使用 axWindowsMediaPlayer 控件 #### 1. 引入必要的命名空间 在开始编写代码之前,我们需要引入一系列的命名空间,这些命名空间提供了.NET Framework中的类库,使得我们能够使用它们的功能。此程序中涉及到的命名空间包括: - `System`: 包含基础的类型和成员。 - `System.Collections.Generic`: 提供了泛型集合类(如`List<T>`)。 - `System.ComponentModel`: 提供了组件模型相关的类。 - `System.Data`: 提供数据访问功能。 - `System.Drawing`: 提供图形和图像处理功能。 - `System.Linq`: 提供语言集成查询功能。 - `System.Text`: 提供字符串处理功能。 - `System.Windows.Forms`: 提供Windows表单控件和应用程序框架。 ```csharp 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; ``` #### 2. 定义程序类 接下来定义了一个名为`Form1`的窗体类,它继承自`System.Windows.Forms.Form`,用于创建一个窗口。 ```csharp public partial class Form1 : Form { private static string PathBase = System.AppDomain.CurrentDomain.BaseDirectory; ``` 这里定义了一个静态字段`PathBase`,用于存储当前应用程序的目录路径,方便后续文件操作时使用。 #### 3. 初始化控件 在`Form1`的构造函数中调用`InitializeComponent()`方法初始化界面元素。这个方法通常由Visual Studio自动生成,并负责加载窗体上所有的控件。 ```csharp public Form1() { InitializeComponent(); } ``` #### 4. 窗体加载事件 窗体加载完成后触发`Form1_Load`事件,在这个事件处理器中设置音量滑块的最小值、最大值和初始值。 ```csharp private void Form1_Load(object sender, EventArgs e) { this.tbarVolume.Minimum = 0; this.tbarVolume.Maximum = 100; this.tbarVolume.Value = this.axWindowsMediaPlayer1.settings.volume; } ``` #### 5. 播放文件 该程序支持多种方式播放文件: - **通过按钮播放文件**:当用户点击`button5_Click`事件对应的按钮时,会弹出一个文件对话框让用户选择文件。程序允许用户一次选择多个文件,并将它们添加到播放列表中。 ```csharp OpenFileDialog openFileDialog = new OpenFileDialog(); openFileDialog.Multiselect = true; openFileDialog.Filter = "Mp3文件|*.mp3|Wav文件|*.wav|Wma文件|*.wma|Wmv文件|*.wmv|所有文件|*.*"; if (openFileDialog.ShowDialog() == DialogResult.OK) { axWindowsMediaPlayer1.currentPlaylist = axWindowsMediaPlayer1.newPlaylist("aa", ""); foreach (string fn in openFileDialog.FileNames) { axWindowsMediaPlayer1.currentPlaylist.appendItem(axWindowsMediaPlayer1.newMedia(fn)); } } axWindowsMediaPlayer1.Ctlcontrols.play(); ``` - **指定文件路径播放**:通过`button1_Click`事件对应的按钮播放指定路径的文件。 ```csharp private void button1_Click(object sender, EventArgs e) { string Path = PathBase + "2.mpg"; this.axWindowsMediaPlayer1.URL = Path; this.axWindowsMediaPlayer1.Ctlcontrols.play(); } ``` - **打开文件对话框播放**:通过`button4_Click`事件对应的按钮打开文件对话框,用户选择后播放文件。 ```csharp OpenFileDialog openFile = new OpenFileDialog(); openFile.Filter = "mp3文件|*.mp3"; if (DialogResult.OK == openFile.ShowDialog()) { axWindowsMediaPlayer1.URL = openFile.FileName; } ``` #### 6. 获取媒体信息 `button6_Click`事件处理器展示了如何获取当前播放的媒体的信息,例如持续时间、标题、作者等。 ```csharp private void button6_Click(object sender, EventArgs e) { string Duration = this.axWindowsMediaPlayer1.currentMedia.getItemInfo("Duration"); string Title = this.axWindowsMediaPlayer1.currentMedia.getItemInfo("Title"); string Author = this.axWindowsMediaPlayer1.currentMedia.getItemInfo("Author"); string Copyright = this.axWindowsMediaPlayer1.currentMedia.getItemInfo("Copyright"); } ``` 本段代码实现了一个基本的多媒体播放器应用程序,通过`axWindowsMediaPlayer`控件实现了播放不同类型的媒体文件的功能,并且还提供了获取媒体文件信息的功能。这为开发人员提供了一个良好的起点,可以根据实际需求进行扩展和改进。
- ncat1232012-11-17说明不够详细
- 粉丝: 0
- 资源: 1
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- python-leetcode题解之第1015题可被k整除的最小整数.zip
- 基于Java的交友后端设计源码分享
- 基于Java Servlet的天津大学2020级软件工程综合实践项目三后端设计源码
- 基于Java语言的合诚建设公司项目hc_js设计源码
- 基于Java语言的中文VOCALOID·Synthesizer V统计月报设计源码
- 基于JavaScript的南斗快速开发平台设计源码
- python-leetcode题解之第1014题最佳观光组合.zip
- python-leetcode题解之第1011题在D天内送达包裹的能力.zip
- 基于Python和Shell的JXPAMG数据分析与绘图工具设计源码
- 基于HTML、CSS、JavaScript和Java的单车租赁网站实训项目设计源码