主要内容 #
1. 上一首按钮操作模块 #
以下程序完成的功能是:当点击上一首按钮时,音乐播放器的音乐会切换到上一首并播放。
def preview_music(self):
"""
上一首
"""
self.play_slider.setValue(0)
if self.qlist.count() == 0:
self.tips('当前路径内无可播放的音乐文件')
return
pre_row = self.qlist.currentRow(
) - 1 if self.qlist.currentRow() != 0 else self.qlist.count() - 1
self.qlist.setCurrentRow(pre_row) # 获取上一首音乐在列表中到id
self.is_switching = True # 表征当前是通过切换的操作
self.set_cur_playing() # 设置当前播放文件
self.play_music() # 播放音乐
self.is_switching = False # 对应flag置为False
完成音乐文件的上一首按钮操作,还需要设计一个按钮。
将该按钮与对应的功能进行连接。
程序如下:
# 在self.init()中找到如下这部分代码
# --上一首按钮
self.preview_button = QPushButton('上一首', self) # 上一首按钮
# 并且在下一行增加如下这段代码
self.preview_button.clicked.connect(self.preview_music) # 设置对应操作
将以上所有代码加入到MusicPlayer类中,并且在self.init()函数中做好相应的修改。
再次运行程序,查看具体效果。
2. 下一首按钮操作模块 #
以下程序完成的功能是:当点击下一首按钮时,音乐播放器的音乐会切换到下一首音乐并播放。
def next_music(self):
"""
下一首
"""
self.play_slider.setValue(0)
if self.qlist.count() == 0:
self.tips('当前路径内无可播放的音乐文件')
return
next_row = self.qlist.currentRow(
) + 1 if self.qlist.currentRow() != self.qlist.count() - 1 else 0
self.qlist.setCurrentRow(next_row) # 获取下一首音乐在列表中到id
self.is_switching = True # 表征当前是通过切换的操作
self.set_cur_playing() # 设置当前播放文件
self.play_music() # 播放音乐
self.is_switching = False # 对应flag置为False
完成音乐文件的下一首按钮操作,还需要设计一个按钮。
将该按钮与对应的功能进行连接。
程序如下:
# 在self.init()中找到如下这部分代码
# --下一首按钮
self.next_button = QPushButton('下一首', self) # 下一首按钮
# 并且在下一行增加如下这段代码
self.next_button.clicked.connect(self.next_music) # 设置对应操作
将以上所有代码加入到MusicPlayer类中,并且在self.init()函数中做好相应的修改。
再次运行程序,查看具体效果。
3. 小结 #
- 本章完成了音乐播放器的上一首操作模块
- 本章完成了音乐播放器的下一首操作模块
习题 #
- 无