概要
这章讲的音乐播放器最最重要的部分,怎么播放音乐控制进度条,控制声音,上一首下一首,控制音量,静音
pygame.mixer.music
如果单纯是音乐的话pyqt5是有组件的,但这次不管什么原因,我们用的是pygame,效果貌似也一样,就先用它吧,毕竟是个用来写游戏的引擎
这是文档里面写的 pygame.mixer.music 的所有方法
pygame.mixer.music.load
读取音乐
pygame.mixer.music.unload
释放资源
pygame.mixer.music.play
播放音乐
pygame.mixer.music.rewind
重新播放此音乐
pygame.mixer.music.stop
停止
pygame.mixer.music.pause
暂停
pygame.mixer.music.unpause
取消暂停
pygame.mixer.music.fadeout
停止音乐后会有渐出
pygame.mixer.music.set_volume
设置音乐音量
pygame.mixer.music.get_volume
获取音量数值
pygame.mixer.music.get_busy
检查音乐是否在播放
pygame.mixer.music.set_pos
设置音乐从哪播放
pygame.mixer.music.get_pos
或者音乐的进度
pygame.mixer.music.queue
? 下一首跟随的队列
pygame.mixer.music.set_endevent
设置音乐停止后的事件
pygame.mixer.music.get_endevent
???
看见了没,里面有用来释放资源的,unload,但我们不需要这个,我们有deletelater()
rewind 可以用来写单曲循环,噢不想写,也就是get/set endevent有关吧,也可以不用,pyqt5里按钮控制也行,但这里不想写
完善一下播放列表部分
def readdb(self):
try:
conn = self.sqlconn()
cur = conn.cursor()
sql="select songname,name,album,lyricpath,cover,filepath from 'song'"
cur.execute(sql)
self.listdata=cur.fetchall()
self.playlist.setRowCount(len(self.listdata[0]))
y=0
self.namelist=[]
self.musiclist=[]