python使用wxPython打开并播放wav文件的方法


Posted in Python onApril 24, 2015

本文实例讲述了python使用wxPython打开并播放wav文件的方法。分享给大家供大家参考。具体实现方法如下:

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

希望本文所述对大家的Python程序设计有所帮助。

Python 相关文章推荐
Python中的各种装饰器详解
Apr 11 Python
python3.5 + PyQt5 +Eric6 实现的一个计算器代码
Mar 11 Python
python复制文件到指定目录的实例
Apr 27 Python
Sanic框架应用部署方法详解
Jul 18 Python
python随机数分布random测试
Aug 27 Python
Python3 获取一大段文本之间两个关键字之间的内容方法
Oct 11 Python
dpn网络的pytorch实现方式
Jan 14 Python
通过python 执行 nohup 不生效的解决
Apr 16 Python
Python参数传递机制传值和传引用原理详解
May 22 Python
如何在VSCode下使用Jupyter的教程详解
Jul 13 Python
详解Python IO编程
Jul 24 Python
Python OpenCV 图像平移的实现示例
Jun 04 Python
python使用PyGame播放Midi和Mp3文件的方法
Apr 24 #Python
python使用PyGame绘制图像并保存为图片文件的方法
Apr 24 #Python
python使用PIL缩放网络图片并保存的方法
Apr 24 #Python
python使用Tkinter显示网络图片的方法
Apr 24 #Python
Python中最常用的操作列表的几种方法归纳
Apr 24 #Python
在Python中使用lambda高效操作列表的教程
Apr 24 #Python
使用Python的判断语句模拟三目运算
Apr 24 #Python
You might like
封装ThinkPHP的一个文件上传方法实例
2014/10/31 PHP
微信公众平台消息接口校验与消息接口响应实例
2014/12/23 PHP
YII框架中搜索分页jQuery写法详解
2016/12/19 PHP
PHP最常用的正则表达式
2017/02/13 PHP
javascript 密码强弱度检测万能插件
2009/02/25 Javascript
Javascript解析URL方法详解
2014/12/05 Javascript
js中不同的height, top的区别对比
2015/09/24 Javascript
js点击文本框后才加载验证码实例代码
2015/10/20 Javascript
Three.js学习之几何形状
2016/08/01 Javascript
微信小程序 中wx.chooseAddress(OBJECT)实例详解
2017/03/31 Javascript
详解vue-router 初始化时做了什么
2018/06/11 Javascript
浅谈Vue.js路由管理器 Vue Router
2018/08/16 Javascript
使用wxapp-img-loader自定义组件实现微信小程序图片预加载功能
2018/10/18 Javascript
12个提高JavaScript技能的概念(小结)
2019/05/09 Javascript
微信小程序错误this.setData报错及解决过程
2019/09/18 Javascript
[00:12]2018DOTA2亚洲邀请赛 Sccc亮相SOLO赛,今年他又会有什么样的战绩?
2018/04/06 DOTA
python实现简单的socket server实例
2015/04/29 Python
Python urllib、urllib2、httplib抓取网页代码实例
2015/05/09 Python
Python合并两个字典的常用方法与效率比较
2015/06/17 Python
Python实现螺旋矩阵的填充算法示例
2017/12/28 Python
使用python+poco+夜神模拟器进行自动化测试实例
2020/04/23 Python
python多线程semaphore实现线程数控制的示例
2020/08/10 Python
详解移动端HTML5音频与视频问题及解决方案
2018/08/22 HTML / CSS
沃达丰英国有限公司:Vodafone英国
2019/04/16 全球购物
焊接专业毕业生求职信
2013/10/01 职场文书
医学检验专业个人求职信范文
2013/12/04 职场文书
库房主管岗位职责
2013/12/31 职场文书
营销总监岗位职责范本
2014/02/26 职场文书
大学生简短的自我评价
2014/09/12 职场文书
中小学生学籍证明
2014/10/25 职场文书
2014旅游局党组书记党建工作汇报材料
2014/11/02 职场文书
逃课检讨书范文
2015/05/06 职场文书
独生子女证明范本
2015/06/19 职场文书
《观潮》教学反思
2016/02/17 职场文书
Python基础之元类详解
2021/04/29 Python
golang 实现Location跳转方式
2021/05/02 Golang