在我的节目中,我尝试随机播放一些声音。但问题是,我听不到他们。我没有错误或类似的东西,我听不到声音。谢谢您的帮助。对不起,如果我的英语不好。这是我的代码:
import Tkinter as tk
import random
import wx
class SampleApp(tk.Tk):
def __init__(self, *args, **kwargs):
tk.Tk.__init__(self, *args, **kwargs)
self.state("zoomed")
container= tk.Frame(self)
container.config()
container.pack(side="top", fill="both", expand=True)
container.grid_rowconfigure(0, weight=2)
container.grid_columnconfigure(0, weight=1)
self.frames={}
for F in (fenster, fensta):
frame= F(container, self)
self.frames[F]=frame
frame.grid(row=0, column=0, sticky="nsew")
frame.pack_propagate(0)
self.show_frame(fenster)
def show_frame(self, c):
frame=self.frames[c]
frame.tkraise()
class fenster(tk.Frame):
def __init__(self, parent, controller):
tk.Frame.__init__(self, parent)
button=tk.Button(self, text="Start",
command=lambda: controller.show_frame(fensta))
button.pack()
class fensta(tk.Frame):
def __init__(self, parent, controller):
tk.Frame.__init__(self, parent)
def ok():
def do_a():
def __init__(self, parent):
wx.Frame.__init__(self, parent)
self.test = wx.Sound('ja.wav')
self.test.Play(wx.SOUND_SYNC)
print("a")
def do_b():
def __init__(self, parent):
wx.Frame.__init__(self, parent)
self.testa = wx.Sound('nein.wav')
self.testa.Play(wx.SOUND_SYNC)
print("b")
a=random.randint(1,2)
if a==1:
do_a()
elif a==2:
do_b()
button=tk.Button(self, text="press", command=ok)
button.pack()
if __name__== "__main__":
app=SampleApp()
app.mainloop()
答案 0 :(得分:0)
要测试你是否对wxPython本身有问题,请使用本应使用wxpython安装在系统上的the sound sample code。
如果您无法使用示例代码获得声音,那么您遇到了wxpython的问题。某些Linux发行版和you need to recompile it by hand while enabling sound support to get sound output
存在一些问题如果声音样本工作正常,那么您的问题可能是由于您在同一程序中混合tk和wx。这有什么理由吗?
答案 1 :(得分:0)
你不能混合wxPython和Tkinter,句号。