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入门篇之列表和元组
Oct 17 Python
Python通过matplotlib绘制动画简单实例
Dec 13 Python
python绘制条形图方法代码详解
Dec 19 Python
PyTorch上搭建简单神经网络实现回归和分类的示例
Apr 28 Python
朴素贝叶斯分类算法原理与Python实现与使用方法案例
Jun 26 Python
Python开发的十个小贴士和技巧及长常犯错误
Sep 27 Python
Django REST framework 视图和路由详解
Jul 19 Python
python 实现手机自动拨打电话的方法(通话压力测试)
Aug 08 Python
TensorFlow实现保存训练模型为pd文件并恢复
Feb 06 Python
详解基于Scrapy的IP代理池搭建
Sep 29 Python
详解python polyscope库的安装和例程
Nov 13 Python
基于python实现银行管理系统
Apr 20 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
PHP学习笔记 (1) 环境配置与代码调试
2011/06/19 PHP
解析PHP对现有搜索引擎的调用
2013/06/25 PHP
给ECShop添加最新评论
2015/01/07 PHP
symfony表单与页面实现技巧
2015/01/26 PHP
PHP实现基于栈的后缀表达式求值功能
2017/11/10 PHP
PHP接入支付宝接口失效流程详解
2020/11/10 PHP
一个加载js文件的小脚本
2007/06/28 Javascript
firefox事件处理之自动查找event的函数(用于onclick=foo())
2010/08/05 Javascript
JavaScript高级程序设计 客户端存储学习笔记
2011/09/10 Javascript
javascript快速排序算法详解
2014/09/17 Javascript
让html页面不缓存js的实现方法
2014/10/31 Javascript
js实现文字跟随鼠标移动而移动的方法
2015/02/28 Javascript
深入理解setTimeout函数和setInterval函数
2016/05/20 Javascript
javascript ASCII和Hex互转的实现方法
2016/12/27 Javascript
原生js实现手风琴功能(支持横纵向调用)
2017/01/13 Javascript
EasyUI Tree树组件无限循环的解决方法
2017/09/27 Javascript
使用Dropzone.js上传的示例代码
2017/10/10 Javascript
trackingjs+websocket+百度人脸识别API实现人脸签到
2018/11/26 Javascript
小程序数据通信方法大全(推荐)
2019/04/15 Javascript
关于element-ui的隐藏组件el-scrollbar的使用
2019/05/29 Javascript
python中使用sys模板和logging模块获取行号和函数名的方法
2014/04/15 Python
python threading模块操作多线程介绍
2015/04/08 Python
黑科技 Python脚本帮你找出微信上删除你好友的人
2016/01/07 Python
解决Python 命令行执行脚本时,提示导入的包找不到的问题
2019/01/19 Python
python中从for循环延申到推导式的具体使用
2019/11/29 Python
Python实现使用dir获取类的方法列表
2019/12/24 Python
Django实现内容缓存实例方法
2020/06/30 Python
python opencv pytesseract 验证码识别的实现
2020/08/28 Python
彻底弄明白CSS3的Media Queries(跨平台设计)
2010/07/27 HTML / CSS
英国在线定制百叶窗网站:Swift Direct Blinds
2020/02/25 全球购物
屈臣氏菲律宾官网:Watsons菲律宾
2020/06/30 全球购物
产品促销活动策划书
2014/01/15 职场文书
辞职信怎么写
2015/02/27 职场文书
2015年学校教育教学工作总结
2015/04/22 职场文书
读《方与圆》有感:交友方圆有度
2020/01/14 职场文书
Pandas数据类型之category的用法
2021/06/28 Python