python使用wxPython打开并播放wav文件的方法
本文实例讲述了python使用wxPython打开并播放wav文件的方法。分享给大家供大家参考。具体实现方法如下:
'''wx_lib_filebrowsebutton_sound.py
selectasoundfileandplayit
wx.lib.filebrowsebutton.FileBrowseButton(parent,labelText,fileMask)
(combineswx.TextCtrlandwxFileDialogwidgets)
wx.Sound(fileName,isResource=False)
testedwithPython27andwxPython291byvegaseat25jul2013
'''
importwx
importwx.lib.filebrowsebutton
classMyFrame(wx.Frame):
def__init__(self,parent,mytitle,mysize):
wx.Frame.__init__(self,parent,wx.ID_ANY,mytitle,
size=mysize)
self.SetBackgroundColour("green")
panel=wx.Panel(self)
#maskfilebrowsertolookfor.wavsoundfiles
self.fbb=wx.lib.filebrowsebutton.FileBrowseButton(panel,
labelText="SelectaWAVEfile:",fileMask="*.wav")
self.play_button=wx.Button(panel,wx.ID_ANY,">>Play")
self.play_button.Bind(wx.EVT_BUTTON,self.onPlay)
#setupthelayoutwithsizers
hsizer=wx.BoxSizer(wx.HORIZONTAL)
hsizer.Add(self.fbb,1,wx.ALIGN_CENTER_VERTICAL)
hsizer.Add(self.play_button,0,wx.ALIGN_CENTER_VERTICAL)
#createaborderspace
border=wx.BoxSizer(wx.VERTICAL)
border.Add(hsizer,0,wx.EXPAND|wx.ALL,10)
panel.SetSizer(border)
defonPlay(self,evt):
filename=self.fbb.GetValue()
self.sound=wx.Sound(filename)
#errorhandling...
ifself.sound.IsOk():
self.sound.Play(wx.SOUND_ASYNC)
else:
wx.MessageBox("Missingorinvalidsoundfile","Error")
app=wx.App(0)
#createaMyFrameinstanceandshowtheframe
mytitle="wx.lib.filebrowsebuttonandwx.Sound"
width=600
height=90
MyFrame(None,mytitle,(width,height)).Show()
app.MainLoop()
希望本文所述对大家的Python程序设计有所帮助。