python通过wxPython打开一个音频文件并播放的源码

下面代码内容是关于python通过wxPython打开一个音频文件并播放的的代码,应该是对码农有所用处。

''' 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,

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

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容