2013-05-06 33 views
0
from tkinter import * 

import sfml 


window = Tk() 

window.minsize(640, 480) 


def sonido(): 
    file = sfml.Music.from_file('poco.ogg') 
    file.play() 


test = Button (window, text = 'Sound test', command=sonido) 
test.place (x = 10, y = 60) 

window.mainloop() 

使用Windows 7,Python的3.3,SFML 1.3.0庫,如果我把它的功能是播放文件。 我究竟做錯了什麼 ?謝謝。爲什麼SFML不在這個Python代碼發揮功能,裏面的文件?

回答

0

谷歌comp.lang.python的組:看來,垃圾收集發佈「文件」,原因是裏面「SONIDO」函數的局部變量。因此,使用全局變量「文件」解決了這一問題。

因爲我想學習好編程方法做到這一點會令「文件」一類至極的成員將包含根窗口對象的最佳途徑。所以。我不會使用全局變量。

感謝您的閱讀。

相關問題