c#简易音乐播放器回忆版

1.基本框架搭建

  • 找到Window Media Player组件(后续简称player组件)添加进来
  • 找到listbox组件用来存放歌曲列表,设置一个list集合歌曲的路径,listbox和这个list中数据绑定起来

2.基本功能

2.1 播放/暂停

通过给特定的button按钮绑定事件,实现播放暂停的功能

  1. 这里面用到了player组件的Ctlcontrols的播放,暂停功能。
  2. 还用到了player组件的URL属性用来标记当前播放歌曲的路径。
  3. 若button按钮上面Text为暂停时,则点击button的Text改为播放,且利用Ctlcontrols的play()方法。
  4. 播放操作如上面第三点

2.2上一曲,下一曲

  1. 设置一个count变量用来存放当前选定的歌曲下标。
    2.上一曲: count - -;判断count是否小于0,如果小于0则让count = listbox.Items.Count - 1;
    下一曲:则count++,判断count是否超过listbox的已有项,如果是则count = 0;

2.3 导入音乐文件

  1. 设置一个button按钮用来向listbox中导入新的歌曲。
  2. 使用c#的OpenFileDialog类来选择要导入的音乐
  3. 导入音乐也是先添加进存放歌曲路径的list集合中再添加到listbox中

2.4 右键删除指定音乐文件

  1. 给listbox条件一个右键菜单(ContextMenuStrip)里面写上删除按钮
  2. 获取listbox中需要删除的歌曲数量设置一个for循环逐步删除已经选定的歌曲
  3. 删除歌曲时要先删集合再删列表

3. 歌词显示功能

  1. 歌词显示功能模块中需要用到Timer定时器
  2. 先找到是否存在对应歌词的lrc文件
  3. 将lrc的歌词通过String.Split()分成时间和歌词两部分
  4. 将lrc文件的每行分割为时间和歌词后分别存入不同的集合中(下标和歌曲的下标一一对应)
  5. 建立一个for循环,循环遍历每一句歌词的时间。如果当前歌曲播放时间在timeList[i]和timeList[i+1]之间,则将当前行歌词lrcList[i]中的内容读入显示歌词的label标签中

4.编码中碰到的一些类和方法

4.1 openfileDialog组件介绍

  1. 这是一个弹出文件对话款的类
  2. InitialDirectory属性是设置文件对话框打开的默认路径
  3. Filter属性是过滤要选择的文件类型
  4. Multiselect属性是表示是否可以选择多个文件
  5. FileName属性是返回选中的文件路径,如果是多个文件则用FileNames

4.2 ListBox组件

1.listbox是列表框控件
2.add是给listbox添加内容,remove at是移除内容

4.3 String类的一些方法

  1. substring
  • substring(int a,int b)返回字符串开始索引(包括)到结束索引(不包括)之间的字符串
  • 例如

在这里插入图片描述

  1. String.Split
  • 用多个字符来分隔字符串,但是分隔的字符串不包括分隔字符
  • 例如
    在这里插入图片描述

4.3 File类介绍

1.Exists方法:传递一个文件的路径,判断指定文件是否存在

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值