跳至正文
View Categories

< 1 min read

主要内容 #

  • 上一首按钮操作模块
  • 下一首按钮操作模块
  • 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. 小结 #

    • 本章完成了音乐播放器的上一首操作模块
    • 本章完成了音乐播放器的下一首操作模块

    习题 #