用户:
python小神查看:1 回复:5 评论:1 创建时间:2019-01-24T18:05:21
硬核源代码
from tkinter import *
import tkinter.filedialog
import tkinter.messagebox
import pygame
import os
import random
try:
os.chdir("D:\\")
except:
os.chdir("C:\\")
filename = "history_mp3.txt"
tk = Tk()
tk.title("MP3 Play")
pygame.mixer.init()
def play():
file = tkinter.filedialog.askopenfilename(title="Open mp3 file",filetypes=[("mp3 file","*.mp3")])
pygame.mixer.music.load(file)
try:
with open(filename,"a") as obj:
obj.write(file+"\n")
except:
with open(filename,"a") as obj:
obj.write("Unknow filename\n")
pygame.mixer.music.play()
def loop():
file = tkinter.filedialog.askopenfilename(title="Open mp3 file",filetypes=[("mp3 file","*.mp3")])
pygame.mixer.music.load(file)
try:
with open(filename,"a") as obj:
obj.write(file+"\n")
except:
with open(filename,"a") as obj:
obj.write(file+"\n")
pygame.mixer.music.play(start=0.0,loops=-1)
def pause():
pygame.mixer.music.pause()
def unpause():
pygame.mixer.music.unpause()
def q():
quit()
def history():
try:
with open(filename,"r") as obj:
print(obj.read())
tkinter.messagebox.showwarning("mp3 player","You can see it in IDLE or black window.")
except:
with open(filename,"a") as obj:
obj.write("")
def clear():
try:
os.remove(filename)
except:
pass
li = ["FLAT","SUNKEN","RAISED","GROOVE","RIDGE"]
look = random.choice(li)
lili = ["red","yellow","green","black","white","gray","brown","#66ccff","#66ffcc"]
color = random.choice(lili)
if look == "FLAT":
F = Frame(tk,bg=color,borderwidth=5,relief=FLAT)
if look == "SUNKEN":
F = Frame(tk,bg=color,borderwidth=5,relief=SUNKEN)
if look == "RAISED":
F = Frame(tk,bg=color,borderwidth=5,relief=RAISED)
if look == "GROOVE":
F = Frame(tk,bg=color,borderwidth=5,relief=GROOVE)
if look == "RIDGE":
F = Frame(tk,bg=color
,borderwidth=5,relief=RIDGE)
F.pack(padx=5,pady=5)
B = Button(F,text="Play",command=play)
B.grid(row=0,column=0)
B1 = Button(F,text="Loop Play",command=loop)
B1.grid(row=0,column=1)
B2 = Button(F,text="Pause",command=pause)
B2.grid(row=0,column=2)
B3 = Button(F,text="Unpause",command=unpause)
B3.grid(row=0,column=3)
B4 = Button(F,text="Quit",command=q)
B4.grid(row=0,column=4)
B5 = Button(F,text="History",command=history)
B5.grid(row=0,column=5)
B6 = Button(F,text="Clear History",command=clear)
B6.grid(row=0,column=6)