使用win32库的WMPlayer.OCX开发一个简易的音乐播放器

 import sys
 from PyQt4 import QtGui, QtCore
 from win32com.client import Dispatch

 class MyWindow(QtGui.QWidget):
     def __init__(self):
         super(MyWindow, self).__init__()
         self.setWindowTitle('音乐播放器')
         self.resize(485, 300)

         self.btnAdd = QtGui.QPushButton('Add')
         self.btnPlay = QtGui.QPushButton('Play')
         self.btnPause = QtGui.QPushButton('Pause')
         self.btnStop = QtGui.QPushButton('Stop')
         self.btnNext = QtGui.QPushButton('Next')
         self.txtList = QtGui.QTextEdit()

         grid = QtGui.QGridLayout()
         grid.addWidget(self.btnAdd, 0, 0)
         grid.addWidget(self.btnPlay, 0, 1)
         grid.addWidget(self.btnPause, 0, 2)
         grid.addWidget(self.btnStop, 0, 3)
         grid.addWidget(self.btnNext, 0, 4)
         grid.addWidget(self.txtList, 1, 0, 1, 5)
         self.setLayout(grid)

         self.connect(self.btnAdd, QtCore.SIGNAL('clicked()'), self.onBtnAdd)
         self.connect(self.btnPlay, QtCore.SIGNAL('clicked()'), self.onBtnPlay)
         self.connect(self.btnPause, QtCore.SIGNAL('clicked()'), self.onBtnPause)
         self.connect(self.btnStop, QtCore.SIGNAL('clicked()'), self.onBtnStop)
         self.connect(self.btnNext, QtCore.SIGNAL('clicked()'), self.onBtnNext)

         self.wmp = Dispatch('WMPlayer.OCX')

     def onBtnAdd(self):
         file = QtGui.QFileDialog.getOpenFileName(self, '打开文件', filter='音乐文件(*.mp3; *.wma; *.wav)')
         if file:
             media = self.wmp.newMedia(file)
             self.wmp.currentPlayList.appendItem(media)
             self.txtList.append(file+'\n')
     def onBtnPlay(self):
         self.wmp.controls.play()
     def onBtnPause(self):
         self.wmp.controls.pause()
     def onBtnStop(self):
         self.wmp.controls.stop()
     def onBtnNext(self):
         self.wmp.controls.next()
 app = QtGui.QApplication(sys.argv)
 mywindow = MyWindow()
 mywindow.show()
 app.exec_()

Python -- 多媒体编程 -- 音乐播放的更多相关文章

  1. python 开发在线音乐播放器-简易版

    在线音乐播放器,使用python的Tkinter库做了一个界面,感觉这个库使用起来还是挺方便的,音乐的数据来自网易云音乐的一个接口,通过urllib.urlopen模块打开网址,使用Json模块进行数 ...

  2. Python使用Pygame.mixer播放音乐

    Python使用Pygame.mixer播放音乐 frequency这里是调频率... 播放网络中的音频: #!/usr/bin/env python # -*- coding: utf-8 -*- ...

  3. python实现音乐播放器

    python实现音乐播放器 模块:pygame 模块:time Python 布尔循环实例: import time import pygame muxi_k = """ ...

  4. 使用python打造一款音乐播放器

    作者qq:64761294 编程/考试交流群:834531270 欢迎交流 核心播放模块(pygame内核) import time import pygame import easygui as g ...

  5. Android学习笔记_24_多媒体MediaPlayer对象之音乐播放器与SoundPool声音池

    一.MediaPlayer对象常用方法介绍: MediaPlayer mediaPlayer = new MediaPlayer(); if (mediaPlayer.isPlaying()) { m ...

  6. Python调用Windows API函数编写录音机和音乐播放器

    功能描述: 1)使用tkinter设计程序界面: 2)调用Windows API函数实现录音机和音乐播放器. . 参考代码: ​ 运行界面: ​

  7. 吴裕雄--天生自然python学习笔记:python 用pygame模块制作 MP3 音乐播放器

    利用 music 对象来制作一个 MP3 音乐播放器 . 应用程序总览 从歌曲清单中选择指定的歌曲,单击“播放”按钮可开始播放, 在播放 xxx 歌曲”的信息. 歌曲播放的过程中,可以暂停.停止,也可 ...

  8. 简单的音乐播放器(VS 2010 + Qt 4.8.5)

    昨天历经千辛万苦,配置好了VS 2010中的Qt环境(包括Qt for VS插件),今天决定浅浅地品味一下将两者结合进行编程的魅力. 上网查了一些资料,学习了一些基础知识,决定做一个简单的音乐播放器, ...

  9. NABCD分析java音乐播放器

    程设计题目:java音乐播放器 一.课程设计目的 1.编程设计音乐播放软件,使之实现音乐播放的功能. 2.培养学生用程序解决实际问题的能力和兴趣. 3.加深java中对多媒体编程的应用. 二.课程设计 ...

随机推荐

  1. WordPaster-dedecms5.7整合教程

    1.1. 与dedecms5.7整合 本教程中提到的插件文件可在官网的php-ckeditor3x示例中找到. 示例:http://www.ncmem.com/download/WordPaster2 ...

  2. java web 怎么下载大文件(上百M)

    Java代码   ; ]; , )) != -) { , bytesRead); 13.               } 14.               toClient.write(buffer ...

  3. MFC载入JPG图片

    ## 1.定义画图函数 HRESULT CIPCamDlg::draw(char *lpImageFile, HWND hWnd, int nScrWidth, int nScrHeight) { H ...

  4. (转)eclipse下配置tomcat7的几个重要问题,值得一看

    转自:http://jingyan.baidu.com/article/ab69b270ccc4792ca7189fd6.html 这段时间开始接触的servlet,今天尝试在eclipse下配置to ...

  5. 待了解概念_GraphicsView

    Linux 的 KDE 是建立在 Graphics view基础上的. 新版本KDE 有向QML前移的趋势. Graphics View 使用了BSP 树的结构. Graphics View 是一个基 ...

  6. eclipse生成可执行jar包(引入第三方.jar文件)

    1. eclipse建立普通的java project项目(项目名aa) 2. 项目正常组织通过buildpath加载各种jar包入项目aa比如例子项目里,加入了spring 各种jar包加入各种配置 ...

  7. QT7有用的尝试总结(1)

    1,系统配置 1. 把系统相关的一些目录配置 写到qt.conf文件里,详细情况情参考QSettings里的qt.conf部分 You can use the qt.conf file to over ...

  8. Visual Studio 简单使用常识操作

    Visual Studio 简单使用个人总结   转载请注明来源:www.cnblogs.com/icmzn(后续会持续更新) 可以查看一下链接,官方关于visual studio 2010 的介绍  ...

  9. js-数组面试题

      <!DOCTYPE html>   <html>   <head>   <meta charset="utf-8" />   & ...

  10. unigui结合JS方法

    在js中界面上所有组件都当成html里来控制 1.控制按钮事件 document.getElementById(MainForm.UniButton4.getId()).click(); 这个方法让J ...