python通過wxPython打開一個音頻文件并播放的代碼
這段代碼片段使用wx.lib.filebrowsebutton.FileBrowseButton控件打開一個wav文件,使用wx.Sound播放
''' wx_lib_filebrowsebutton_sound.py select a sound file and play it wx.lib.filebrowsebutton.FileBrowseButton(parent, labelText, fileMask) (combines wx.TextCtrl and wxFileDialog widgets) wx.Sound(fileName, isResource=False) tested with Python27 and wxPython291 by vegaseat 25jul2013 ''' import wx import wx.lib.filebrowsebutton class MyFrame(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)# mask file browser to look for .wav sound files self.fbb = wx.lib.filebrowsebutton.FileBrowseButton(panel, labelText="Select a WAVE file:", fileMask="*.wav") self.play_button = wx.Button(panel, wx.ID_ANY, ">> Play") self.play_button.Bind(wx.EVT_BUTTON, self.onPlay) # setup the layout with sizers hsizer = wx.BoxSizer(wx.HORIZONTAL) hsizer.Add(self.fbb, 1, wx.ALIGN_CENTER_VERTICAL) hsizer.Add(self.play_button, 0, wx.ALIGN_CENTER_VERTICAL) # create a border space border = wx.BoxSizer(wx.VERTICAL) border.Add(hsizer, 0, wx.EXPAND|wx.ALL, 10) panel.SetSizer(border) def onPlay(self, evt): filename = self.fbb.GetValue() self.sound = wx.Sound(filename) # error handling ... if self.sound.IsOk(): self.sound.Play(wx.SOUND_ASYNC) else: wx.MessageBox("Missing or invalid sound file", "Error")
app = wx.App(0)
create a MyFrame instance and show the frame
mytitle = "wx.lib.filebrowsebutton and wx.Sound" width = 600 height = 90 MyFrame(None, mytitle, (width, height)).Show() app.MainLoop()</pre>
本文由用戶 pycct 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!