我最近开始制作GUI应用程序,并且想要制作一个简单的音乐播放器。我正在使用pygame库播放歌曲,而且效果很好。问题是播放歌曲时窗口冻结,并且我无法按任何按钮。谁能指出我正确的方向?我搜索了很多东西,却一无所获。这是代码:
import tkinter.filedialog as filedialog
from tkinter import *
import os
import pygame
def play(position):
pygame.mixer.music.load(listOfSongs[position])
global index
index += 1
pygame.mixer.music.play()
while pygame.mixer.music.get_busy():
pygame.time.Clock().tick(5)
def next(event):
global index
index += 1
play(index)
root = Tk()
listOfSongs = []
directory = filedialog.askdirectory()
print("Loading files from directory: ", directory)
os.chdir(directory)
pygame.mixer.init()
for file in os.listdir(directory):
if file.endswith('.mp3'):
print("Appending file: ", file)
listOfSongs.append(file)
index = 0
play(index)
b = Button(root, text="Next", bg='red', width=5)
b.bind("<Button-1>", next)
b.pack()
root.mainloop()