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


Posted in Python onMarch 25, 2015

本文实例讲述了python通过wxPython打开一个音频文件并播放的方法。分享给大家供大家参考。具体如下:

这段代码片段使用wx.lib.filebrowsebutton.FileBrowseButton控件打开一个wav文件,使用wx.Sound播放

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实现的文件同步服务器实例
Jun 02 Python
Python如何抓取天猫商品详细信息及交易记录
Feb 23 Python
pandas多级分组实现排序的方法
Apr 20 Python
基于Python 装饰器装饰类中的方法实例
Apr 21 Python
Win8下python3.5.1安装教程
Jul 29 Python
pygame游戏之旅 添加键盘按键的方法
Nov 20 Python
在 Python 中接管键盘中断信号的实现方法
Feb 04 Python
python3使用Pillow、tesseract-ocr与pytesseract模块的图片识别的方法
Feb 26 Python
python数据分析工具之 matplotlib详解
Apr 09 Python
基于python实现把json数据转换成Excel表格
May 07 Python
python如何实现读取并显示图片(不需要图形界面)
Jul 08 Python
Python利用pip安装tar.gz格式的离线资源包
Sep 14 Python
python概率计算器实例分析
Mar 25 #Python
python编写的最短路径算法
Mar 25 #Python
python实现挑选出来100以内的质数
Mar 24 #Python
Python 的 Socket 编程
Mar 24 #Python
python获取标准北京时间的方法
Mar 24 #Python
python实现定时同步本机与北京时间的方法
Mar 24 #Python
Python随机生成一个6位的验证码代码分享
Mar 24 #Python
You might like
全国FM电台频率大全 - 16 河南省
2020/03/11 无线电
PHP异步调用socket实现代码
2012/01/12 PHP
PHP统计nginx访问日志中的搜索引擎抓取404链接页面路径
2014/06/30 PHP
PHP将字符分解为多个字符串的方法
2014/11/22 PHP
php可应用于面包屑导航的递归寻找家谱树实现方法
2015/02/02 PHP
PHP也能干大事之PHP中的编码解码详解
2015/04/20 PHP
php简单实现批量上传图片的方法
2016/05/09 PHP
PHP 自动加载的简单实现(推荐)
2016/08/12 PHP
PHP7 其他修改
2021/03/09 PHP
javascript Ext JS 状态默认存储时间
2009/02/15 Javascript
extjs DataReader、JsonReader、XmlReader的构造方法
2009/11/07 Javascript
js中通过split函数分割字符串成数组小例子
2013/09/21 Javascript
2014年50个程序员最适用的免费JQuery插件
2014/12/15 Javascript
Javascript调用函数方法的几种方式介绍
2015/03/20 Javascript
Jquery异步提交表单代码分享
2015/03/26 Javascript
JS控制div跳转到指定的位置的几种解决方案总结
2016/11/05 Javascript
Angular实现表单验证功能
2017/11/13 Javascript
微信小程序 导入图标实现过程详解
2019/10/11 Javascript
js实现div色块碰撞
2020/01/16 Javascript
jQuery实现飞机大战小游戏
2020/07/05 jQuery
vue props 一次传多个值实例
2020/07/22 Javascript
解决vue组件没显示,没起作用,没报错,但该显示的组件没显示问题
2020/09/02 Javascript
[56:42]VP vs RNG 2019国际邀请赛小组赛 BO2 第二场 8.15
2019/08/17 DOTA
在Python中使用swapCase()方法转换大小写的教程
2015/05/20 Python
Python打包可执行文件的方法详解
2016/09/19 Python
Python实现K折交叉验证法的方法步骤
2019/07/11 Python
CentOS7下安装python3.6.8的教程详解
2020/01/03 Python
全球性的在线购物网站:Zapals
2017/03/22 全球购物
将时尚融入珠宝:Adornmonde
2019/10/17 全球购物
Solaris操作系统的线程机制
2012/12/23 面试题
中学生家长评语大全
2014/04/16 职场文书
本科应届生自荐信
2014/06/29 职场文书
关于教师节的演讲稿
2014/09/04 职场文书
2015年项目工作总结
2015/04/29 职场文书
繁星春水读书笔记
2015/06/30 职场文书
CSS3实现三角形不断放大效果
2021/04/13 HTML / CSS