0

我一直在为我的 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

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

4

1 回答 1

0

替换SND_FILENAMESND_ASYNC这将允许您在播放歌曲时更改歌曲。

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

于 2018-12-04T22:50:48.907 回答