python制作音乐播放器_python实现音乐播放器 python实现花框音乐盒子
本文实例为大家分享了python实现音乐播放器的具体代码,供大家参考,具体内容如下 """这是一个用海龟画图模块和pygame的混音模块制作的简易播放器。
作者:李兴球,日期:2018/8/26"""
from turtle import *
def init_screen():
"""初始化屏幕"""
screen = Screen()
screen.setup(width,height)
screen.bgpic("舞台.png")
screen.title(gametitle)
screen.delay(0)
return screen
def init_mixer():
"""初始化混音器,注意在函数内部导入的模块的作用范围"""
have_pygame = False
try:
import pygame
pygame.mixer.init()
have_pygame = True
except:
pygame = None
return have_pygame ,pygame
class Button(Turtle):
"""按钮类,每个按钮有两张图片,自带音乐"""
def __init__(self,costume_list,x,y,music,width,height):
Turtle.__init__(self,visible=False)
self.penup()
self.costume_list = costume_list # 造型列表
self.costume_index = 0 # 造型初始索引号
self.shape(self.costume_list[self.costume_index]) # 设置造型为索引为0的图
self.goto(x,y)
self.width = width
self.height = height
self.left = x - width/2 # 左边x坐标
self.right = x + width/2 # 右边x坐标
self.top = y + height/2 # 上边y坐标
self.bottom = y - height/2 # 下边y坐标
self.music = music
self.showturtle()
self.onclick(self.play) # 单击按钮调用play方法
def play(self,x,y):
"""先停止音乐再播放音乐"""
pygame.mixer.music.stop() # 停止正在播放的音乐
pygame.mixer.music.load(self.music)
screen.title(gametitle + ",正在播放:" + self.music)
pygame.mixer.music.play(-1,0) # -1表示循环播放,0表示从头开始播放
def onmousemove(self,event):
"""判断鼠标指针是否在按钮坐标范围内"""
pass
def make_button():
"""加载资源,生成播放按钮"""
c1_list = ("Losing_Sleep0.gif","Losing_Sleep1.gif")
[screen.addshape(image) for image in c1_list]
music1 = "Alan Walker - Losing Sleep.mp3"
b1 = Button(c1_list,-250,0,music1,200,150)
screen.cv.bind("",b1.onmousemove,add=True)
c2_list = ("和兰花在一起0.gif","和兰花在一起1.gif")
[screen.addshape(image) for image in c2_list]
music2 = "Yanni - With An Orchid.mp3"
b2 = Button(c2_list,00,0,music2,200,150)
screen.cv.bind("",b2.onmousemove,add=True)
c3_list = ("Faded0.gif","Faded1.gif")
[screen.addshape(image) for image in c3_list]
music3 = "Alan Walker - Faded (纯音乐).wav"
b3 = Button(c3_list,250,0,music3,200,150)
screen.cv.bind("",b3.onmousemove,add=True)
c4_list = ("兰贵人0.gif","兰贵人1.gif")
[screen.addshape(image) for image in c4_list]
music4 = "胡伟立-兰贵人.mp3"
b4 = Button(c4_list,-250,-200,music4,200,150)
screen.cv.bind("",b4.onmousemove,add=True)
c5_list = ("Spectre0.gif","Spectre1.gif")
[screen.addshape(image) for image in c5_list]
music5 = "Alan Walker - Spectre.mp3"
b5 = Button(c5_list,0,-200,music5,200,150)
screen.cv.bind("",b5.onmousemove,add=True)
c6_list = ("新古典主义0.gif","新古典主义1.gif")
[screen.addshape(image) for image in c6_list]
music6 = "新古典主义-组曲.mp3"
b6 = Button(c6_list,250,-200,music6,200,150)
screen.cv.bind("",b6.onmousemove,add=True)
if __name__ == "__main__":
gametitle = "花框音乐盒"
width,height = 800,600
screen = init_screen()
mixer_success,pygame = init_mixer()
if mixer_success:
print("成功初始化混音器。")
else:
print("初始化混音器出现问题。")
make_button()
screen.mainloop()
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持聚米学院。
python制作音乐播放器_python实现音乐播放器 python实现花框音乐盒子相关推荐
- python开发安卓盒子_python实现音乐播放器 python实现花框音乐盒子
本文实例为大家分享了python实现音乐播放器的具体代码,供大家参考,具体内容如下 """这是一个用海龟画图模块和pygame的混音模块制作的简易播放器. 作者:李兴球, ...
- python的网页解析器_python 之网页解析器
一.什么是网页解析器 1.网页解析器名词解释 首先让我们来了解下,什么是网页解析器,简单的说就是用来解析html网页的工具,准确的说:它是一个HTML网页信息提取工具,就是从html网页中解析提取出& ...
- python高级语法装饰器_Python高级编程——装饰器Decorator超详细讲解上
Python高级编程--装饰器Decorator超详细讲解(上篇) 送你小心心记得关注我哦!! 进入正文 全文摘要 装饰器decorator,是python语言的重要特性,我们平时都会遇到,无论是面向 ...
- python grpc unary call错误_python的黑魔法-装饰器
python的装饰器 装饰器 简单的来说就是函数的函数,在执行目标函数时,先执行装饰器函数,很像HOOk 简单的装饰器 实现一个打印日志的装饰器 def myLogger(func):def wrap ...
- python自带网页解析器_python 之网页解析器
一.什么是网页解析器 1.网页解析器名词解释 首先让我们来了解下,什么是网页解析器,简单的说就是用来解析html网页的工具,准确的说:它是一个HTML网页信息提取工具,就是从html网页中解析提取出& ...
- 五一就要到了,我用Python制作一款钉钉低价机票提示器!
点上方"菜鸟学Python",选择"星标" 第466篇原创干货,第一时间送达 清明小长假刚刚过去,紧接着就是五一小长假,不同于以往的三天假期,今年的五一假期足足 ...
- 用python制作生日蛋糕图片大全_Python 制作微信全家福,你就是朋友圈最亮的仔!...
原标题:Python 制作微信全家福,你就是朋友圈最亮的仔! 目录:0 引言 1 环境2 代码实现3 后记 0 引言 前段时间,微信朋友圈开始出现了一种晒照片新形式,微信好友墙,即在一张大图片中展示出 ...
- python制作英汉词典_python如何制作英文字典
本文实例为大家分享了python制作英文字典的具体代码,供大家参考,具体内容如下 功能有添加单词,多次添加单词的意思,查询,退出,建立单词文件. keys=[] dic={} def rdic(): ...
- python修饰器_python设计模式之修饰器模式
python设计模式之修饰器模式 无论何时我们想对一个对象添加额外的功能,都有下面这些不同的可选方法. [ ] 如果合理,可以直接将功能添加到对象所属的类(例如,添加一个新的方法) [ ] 使用组合 ...
最新文章
- 软件测试培训分享:软件测试岗位面试技巧有哪些?
- maven学习十之myEclipse搭建maven项目总结
- boost::spirit模块实现展示不同容器类型的输出格式化的统一和简单的方法
- 学习 Linux_01: 引导程序
- json 插入数据_Oracle Database 20c:JSON功能增强
- 日语毕业论文日文参考文献怎么找?
- 签名档php,签名档文字
- 云平台之实例类型与故障迁移
- 打造Win10+WSL开发环境(2)
- APP移动端测试高级
- 操作系统篇之Linux命令操作和redis安装以及基本使用
- java毕业设计基于web的学校工资管理系统Mybatis+系统+数据库+调试部署
- IHE测试系列之二:报名及参与过程
- 为什么JDK中String类的indexof不使用KMP或者Boyer-Moore等时间复杂度低的算法编辑器
- 批量作业ETL调度,分布式管理平台TASKCTL流程控制原理
- 国家自然科学基金委发布《网络空间大搜索技术白皮书》
- slurm(一) —— 简介
- 10.经典快排和快排加速
- 关于如何动态导出Excel表格——选择想要导出的字段
- 管理学十一(选人、用人、优秀员工特征与避免流失)
热门文章
- 联想第一季度业绩超预期,增长势头强劲
- 通过javascript获取sharepoint数据,使用JS导出Excel
- 2019-行远自迩,登高自卑
- 黑镜狗再现!波士顿动力「大黄狗」上岗SpaceX,勘察火箭爆炸现场
- HDUOJ 4513 吉哥系列故事——完美队形II
- edge linux 下载软件,微软Edge浏览器Linux开发版
- 中兴力维动环监控接线图_中兴力维传统动环监控系统解决方案
- sqlserver之远程访问配置
- 导入的java文件不显示文字_java 引入自定义字体font后出现的硬盘吃光的问题
- 手持「前症保障」的百惠保,号称最容易理赔的重疾险?