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 库,如果我把它从函数中播放出来的文件。 我究竟做错了什么 ?谢谢。

4

1 回答 1

0

google comp.lang.python 组:似乎垃圾收集器释放了“文件”,原因是“sonido”函数内的局部变量。所以使用全局变量“文件”解决了这个问题。

因为我想学习一种好的编程方法,所以最好的方法是让“文件”成为一个包含根窗口对象的类的成员。所以。我不会使用全局变量。

谢谢阅读。

于 2013-05-07T20:11:51.463 回答