音乐播放器-跳过歌曲+暂停等问题

时间:2018-12-04 19:14:32

标签: python playback skip pause winsound

我一直在开发一个音乐播放器程序,以便在我的NEA(Alevel计算机科学项目)中使用Tkinter进行练习。我在程序中具有随机播放功能,但是似乎找不到暂停/跳过歌曲的方法。
代码示例:(很明显,我已经导入了tkinter,random和winsound,而且我还有更多的歌曲)

def song1():
    print('song name - song artist')
    winsound.PlaySound(r"song address",winsound.SND_FILENAME)
def shuffle():
    ShuffleButton.grid_remove()
    playlist=list(range(1,NumberOfSongs+1))
    random.shuffle(playlist)
    print(playlist)
    i=int(0)
    while i<=NumberOfSongs:
        if playlist[i]==1:
            song1()
            i=i+1

顺便说一句,我知道制作音乐播放器可能要简单得多,但我实际上可以理解这种方式。

1 个答案:

答案 0 :(得分:0)

SND_FILENAME替换为SND_ASYNC,这将允许您在播放歌曲时更改歌曲。

使用SND_ASYNC时,需要修改随机播放功能才能播放歌曲-这可以通过在time.sleep(LengthOfSongInSeconds)下使用winsound.PlaySound(r"SongAddress",SND_ASYNC)来完成,这将允许歌曲在下一首之前播放(el)if playlist[i]==x:将播放列表中的下一首歌曲。我知道将会有一种更有效的方式来允许歌曲完整播放,而我正在研究解决方案。