为什么在这个python代码中sfml不在函数中播放文件?

2024-04-19 03:07:26 发布

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

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()

使用windows7,python3.3,sfml1.3.0库,如果我把它放在函数外,它就会被播放。?我做错什么了?谢谢。你知道吗


Tags: fromtestimportplaytkinterdefmusicwindow
1条回答
网友
1楼 · 发布于 2024-04-19 03:07:26

谷歌comp.lang.python语言group:垃圾收集器似乎释放了'file',因为它是'sonido'函数中的一个局部变量。所以使用全局变量'file'解决了这个问题。你知道吗

因为我想学习一个好的编程方法,最好的方法就是让'file'成为包含根窗口对象的类的成员。所以。我不会用globals。你知道吗

谢谢你的阅读。你知道吗

相关问题 更多 >