使用tkinter和pygame实现的简单音乐播放器。该播放器具有选择文件、播放、暂停和停止等基本功能。
时间: 2024-03-17 14:41:58 浏览: 49
酷炫音乐盒: 使用Python和Tkinter配合Pygame打造自己的音乐播放器
下面是使用tkinter和pygame实现的简单音乐播放器的代码:
```python
import pygame
import tkinter as tk
from tkinter import filedialog
class MusicPlayer:
def __init__(self, root):
self.root = root
self.root.title("音乐播放器")
self.root.geometry("300x150")
# 创建控件
self.btn_select = tk.Button(root, text="选择文件", command=self.select_file)
self.btn_play = tk.Button(root, text="播放", command=self.play_music)
self.btn_pause = tk.Button(root, text="暂停", command=self.pause_music)
self.btn_stop = tk.Button(root, text="停止", command=self.stop_music)
# 布局控件
self.btn_select.pack(side=tk.TOP, pady=10)
self.btn_play.pack(side=tk.LEFT, padx=10)
self.btn_pause.pack(side=tk.LEFT, padx=10)
self.btn_stop.pack(side=tk.LEFT, padx=10)
# 初始化音乐播放器
pygame.init()
def select_file(self):
# 选择音乐文件
file_path = filedialog.askopenfilename(filetypes=[("MP3", "*.mp3")])
if file_path:
self.music_file = file_path
self.music_title = file_path.split("/")[-1]
self.root.title("音乐播放器 - {}".format(self.music_title))
def play_music(self):
# 播放音乐
if hasattr(self, "music_file"):
pygame.mixer.music.load(self.music_file)
pygame.mixer.music.play()
def pause_music(self):
# 暂停音乐
if hasattr(self, "music_file"):
pygame.mixer.music.pause()
def stop_music(self):
# 停止音乐
if hasattr(self, "music_file"):
pygame.mixer.music.stop()
# 创建主窗口
root = tk.Tk()
app = MusicPlayer(root)
root.mainloop()
```
这个播放器的界面使用了tkinter,音乐播放使用了pygame。在界面中,我们创建了选择文件、播放、暂停和停止等控件,并使用`pack`方法布局控件。在选择文件时,我们使用`filedialog`模块打开文件选择对话框,并使用`askopenfilename`方法选择MP3文件。在播放音乐时,我们使用`pygame.mixer.music.load`方法加载音乐文件,并使用`pygame.mixer.music.play`方法播放音乐。在暂停音乐时,我们使用`pygame.mixer.music.pause`方法暂停音乐。在停止音乐时,我们使用`pygame.mixer.music.stop`方法停止音乐。
阅读全文