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

作者:令狐不聪 时间:2021-10-20 16:15:08 

本文实例讲述了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,wxPython,音频,文件
0
投稿

猜你喜欢

  • Linux下Centos7安装Mysql5.7.19的详细教程

    2024-01-19 11:15:14
  • 如何解决国外空间显示乱码问题

    2007-11-18 14:28:00
  • pytorch显存一直变大的解决方案

    2021-03-03 00:03:09
  • Windows下安装python2和python3多版本教程

    2021-06-06 07:10:59
  • python文件写入write()的操作

    2023-11-10 04:33:11
  • opencv实现图像校正

    2023-12-26 02:07:49
  • 转换字符串单词的第一个字母为大写

    2007-10-18 10:50:00
  • MS-SQL Server 中单引号的两种处理方法

    2024-01-24 11:17:13
  • W3C优质网页小贴士(二)

    2008-04-07 12:14:00
  • Mysql合并结果接横向拼接字段的实现步骤

    2024-01-19 13:39:35
  • 浅谈MySQL安装starting the server失败的解决办法

    2024-01-25 06:37:22
  • [多图] Google Chrome 试用 Tips

    2009-12-09 15:49:00
  • python format 格式化输出方法

    2023-12-24 16:26:19
  • MYSQL子查询和嵌套查询优化实例解析

    2024-01-23 13:24:34
  • Python获取邮件地址的方法

    2022-05-29 10:53:05
  • tensorflow使用range_input_producer多线程读取数据实例

    2022-10-19 16:43:21
  • python自动截取需要区域,进行图像识别的方法

    2021-05-14 11:04:42
  • js实现input+select组合 抛砖引玉

    2010-08-02 12:34:00
  • 使用pyqt 实现重复打开多个相同界面

    2021-08-19 12:33:43
  • JavaScript实现简单计算器小程序

    2024-05-02 16:28:39
  • asp之家 网络编程 m.aspxhome.com