编写这个播放器,遇到很多问题,比如目前只实现了wav音频文件的播放,而对于这个图中中间所标注的按钮

不能实现让其暂停的功能,同时当点击的时候,让其文本变为"▷",对于这部分功能不知道选定该按钮时的属性是

如何,所以还需继续完善

播放器代码
 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.Media;
using System.IO; namespace WindowsFormsApplication1
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
} private void Form1_Load(object sender, EventArgs e)
{ }
List<string> listSongs = new List<string>();//定义存储歌名的路径泛型变量
private void button5_Click(object sender, EventArgs e)
{
OpenFileDialog ofd = new OpenFileDialog();
ofd.Title = "请选择音频文件";
ofd.InitialDirectory =@"F:\wav_music";
ofd.Filter="音频文件|*.wav|所有文件|*.*";
ofd.Multiselect=true;//多选设置
ofd.ShowDialog();
string[] path = ofd.FileNames;//获取音频文件的全路径
for (int i = ; i < path.Length; i++)
{
listBox1.Items.Add(Path.GetFileName(path[i]));//将获取到的文件路径截取文件名并添加到listbox中
listSongs.Add(path[i]);//将路径添加到list集合当中 } }
/// <summary>
/// 双击播放音乐方法。
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param> private void listBox1_DoubleClick(object sender, EventArgs e)
{
SoundPlayer sp = new SoundPlayer();//
sp.SoundLocation = listSongs[listBox1.SelectedIndex];
sp.Play();
}
/// <summary>
/// 播放下一首
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param> private void button4_Click(object sender, EventArgs e)
{
//获取当前所选定的音乐项
int index = listBox1.SelectedIndex;
index++;
SoundPlayer sp = new SoundPlayer();
if (index ==listSongs.Count)
{ index = ;
}
listBox1.SelectedIndex = index;//将索引重新赋值给listbox选定。
sp.SoundLocation = listSongs[index];
sp.Play(); }
/// <summary>
/// 播放上一首
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param> private void button2_Click(object sender, EventArgs e)
{
//获取当前所选定的音乐项
int index = listBox1.SelectedIndex;
index--;
SoundPlayer sp = new SoundPlayer();
if (index == )
{
index = listSongs.Count - ;
}
listBox1.SelectedIndex = index;
sp.SoundLocation = listSongs[index];
sp.Play(); }
}
}

winform下的简易播放器的更多相关文章

  1. FFmpeg简易播放器的实现-视频播放

    本文为作者原创:https://www.cnblogs.com/leisure_chn/p/10047035.html,转载请注明出处 基于FFmpeg和SDL实现的简易视频播放器,主要分为读取视频文 ...

  2. FFmpeg简易播放器的实现-音视频同步

    本文为作者原创,转载请注明出处:https://www.cnblogs.com/leisure_chn/p/10284653.html 基于FFmpeg和SDL实现的简易视频播放器,主要分为读取视频文 ...

  3. FFmpeg简易播放器的实现-音频播放

    本文为作者原创,转载请注明出处:https://www.cnblogs.com/leisure_chn/p/10068490.html 基于FFmpeg和SDL实现的简易视频播放器,主要分为读取视频文 ...

  4. FFmpeg简易播放器的实现-最简版

    本文为作者原创:https://www.cnblogs.com/leisure_chn/p/10040202.html,转载请注明出处 基于FFmpeg和SDL实现的简易视频播放器,主要分为读取视频文 ...

  5. <Win32_17>集音频和视频播放功能于一身的简易播放器

    前段时间,在学习中科院杨老师的教学视频时,他说了一句话: "我很反对百八十行的教学程序,要来就来一个完整的程序" 对此,我很是赞同.所谓真刀真枪的做了,你才会发现其中的奥秘——然而 ...

  6. ubuntu 下命令行播放器mplayer 使用详解

    ubuntu 下命令行播放器mplayer 使用详解 2011-01-02 21:00:42|  分类: Linux/Unix |  标签: |字号大中小 订阅 使用 MPlayer 播放媒体文件最简 ...

  7. FFmpeg简易播放器的实现-音视频播放

    本文为作者原创,转载请注明出处:https://www.cnblogs.com/leisure_chn/p/10235926.html 基于FFmpeg和SDL实现的简易视频播放器,主要分为读取视频文 ...

  8. mplayer - Linux下的电影播放器

    概要 mplayer [选项] [ 文件 | URL | 播放列表 | - ] mplayer [全局选项] 文件1 [特定选项] [文件2] [特定选项] mplayer [全局选项] {一组文件和 ...

  9. Opencv实现简易播放器

    实现了在MFC中显示图片,再要显示一个视频就是轻而易举的事了,本篇介绍使用Opencv制作一个简易的播放器,实现打开文件.暂停.继续播放.再次播放和总\当前帧数显示功能. 首先还是先看一下界面效果: ...

随机推荐

  1. JS学习:第二周——NO.4DOM库

    DOM库封装练习 var utils = (function () { var flg = 'getComputedStyle' in window;//惰性思想的运用: function makeA ...

  2. Windows10下的JDK环境配置。

    首先附上JDK资源: 下载地址:Java SE Development Kit 8u112 PS:32位系统下载X86,64位系统下载X64 JDK安装: 此处省略安装步骤..... PS:记住JDK ...

  3. web页面跳转的几种方式

    可用客户端触发或服务端触发的方式来实现页面跳转. 客户端触发 方式一:使用Javascript 利用window.location对象的href属性.assign()方法或replace()方法来实现 ...

  4. 域名管理系统DNS

    域名系统DNS,将域名转化为ip地址.域名到ip地址解析过程是以这种方式进行的,当某一程序需要把主机名解析为IP地址时,该应用进程就调用解析程序(本地程序),这时候该进程就变成了DNS的一个客户,将待 ...

  5. LCQCL

    Linux Command Quick Check List 记录一些我Linux使用中的问题的解决方案. # 挂起: 几乎只对RAM供电以保存工作状态的极低能耗状态. 任意键或电源键退出(主要看RP ...

  6. 浅谈HTTP中Get与Post的区别

    引用自:http://www.cnblogs.com/hyddd/archive/2009/03/31/1426026.html Http定义了与服务器交互的不同方法,最基本的方法有4种,分别是GET ...

  7. Unity3D配合AndroidStudio打包

    SET UNITY_PATH="C:\Program Files\Unity\Editor\Unity.exe" echo UNITY_PATH=%UNITY_PATH% SET ...

  8. ESXI6.0启用 snmp

    1.首先通过ILO登录远程控制桌面然后按F2输入密码后进入 2.开启shell 3.按住 Alt + F1 切换到shell 4.启用 snmp   esxcli system snmp set -- ...

  9. sublime text3 前端插件介绍

    Emmet插件 Emmet插件可以说是使用Sublime Text进行前端开发必不可少的插件 它让编写HTML代码变得极其简单高效 基本用法:输入标签简写形式,然后按Tab键 关于Emmet的更多介绍 ...

  10. 移动端下拉刷新、加载更多插件dropload.js(基于jQuery/Zepto)[转]

    使用方法 引用css和js <link rel="stylesheet" href="../dist/dropload.min.css"> < ...