python在同时使用Tkinter和

2024-10-02 20:33:33 发布

您现在位置:Python中文网/ 问答频道 /正文

所以我在下面有一个程序,非常简单的程序,我创建了这个程序,这样我就可以听随机的歌曲,而不是每次进入媒体播放器时都要点击“随机”。现在,我使用Tkinter创建了一个界面,当我单击play按钮时,应用程序就会运行。但是Tkinter窗口被压碎了,我不能点击其他任何东西,当我点击时,它说“python停止工作了”。你知道吗

from multiprocessing import Process
from Tkinter import *
from mutagen.mp3 import MP3
import os, glob, random
import threading, thread
import time

def skip():
    pass

def start():
    songlist =(glob.glob("C:\Users\idoka\Desktop\Music\*.mp3"))
    random.shuffle(songlist)
    root.quit()
    for x in range (1,file_count-1):

        songnum = songlist[x]
        os.startfile(songnum)
        global currentsong
        currentsong = MP3(songnum)
        global length
        length=currentsong.info.length
        P = Process(target=time.sleep, args=(length,))
        P.start()
        P.join()

        if skip():
            continue

root = Tk()
root.geometry('200x200')
root.title("Music")
photostart = PhotoImage(file="C:\Users\idoka\Desktop\Photos\Icon\Hopstarter-Soft-Scraps-Button-Play.gif")
photopause = PhotoImage(file="C:\Users\idoka\Desktop\Photos\Icon\Hopstarter-Soft-Scraps-Button-Pause.gif")

file_count = len(os.walk("C:\Users\idoka\Desktop\Music").next()[2])

startbutton = Button(root, image=photostart , command=start)
skipbutton = Button(root, text="skip", command=skip)
#finishbutton = Button(root, image=photopause, command=finish)

def  main():
    startbutton.pack()
    skipbutton.pack()
    #finishbutton.pack()
    root.mainloop()

if __name__ == '__main__':
    main()

我知道这个程序并不完美,我可以用一种更简单的方式来编程,但我对编程是新手,我想用我自己的方式来编程。我不是要一个简单的一行来写所有这些没有错误,但我要问的是,如果有一些小的事情,我可以做,以使这个不崩溃。 提前谢谢。你知道吗


Tags: fromimport程序ostkinterdefbuttonroot