Python简易音乐播放器

本文介绍了使用Python的Tkinter库创建一个简单的音乐播放器图形界面。通过将歌词点阵信息填充到Text组件来动态显示歌词,利用多线程处理延迟任务。作者分享了代码实现过程,并提到该代码仍有改进空间。
摘要由CSDN通过智能技术生成

上一篇介绍了点阵字展现动态歌词,后续的思路有一条是添加图形界面。这两天搜了下tkinter图形界面的帖子,做了个简单的播放器界面,听首《盗将行》感受下效果吧



Python图形界面


图形界面(GUI),即以图形方式显示计算机操作用户界面。


Python支持第三方库来实现图形界面,例如Tk、wxWidgets及Qt等。其中,Python自带的库支持Tk,可以在代码中直接调用内置的Tkinter:


from tkinter import *
root = Tk()
root.mainloop()


Text文本组件


上一篇已经实现了将歌词动态转化为点阵信息,那么如何将点阵在图形界面中展示呢?


一番权衡,我选择了拿每个字的点阵信息来填充一个独立的Text文本组件的方法,即每个16*16的点阵字数据对应一个16行32列的Text文本框。播放歌曲时,动态将歌词文字的点阵信息通过insert方法填充到组件中以显示在图形界面中


640?wx_fmt=jpeg


多线程


图形界面是通过mainloop()循环显示的,之前通过time.sleep()来延时展现歌词文本的思路就行不通了。


我暂时想到的是多线程方案,由于了解不深、漏洞较大,留作以后修正。目前是通过多线程的threading.Timer()来设置延时线程任务,向图形界面更新歌词内容以展现。


代码下载


此外,代码中还涉及比较琐碎的Tkinter插入图片、按钮、输入框、滚动条等,后台回复 播放器 获取代码github下载链接


目前代码还有挺多要改进的细节,后续会继续更新。


思路总结


其实这个代码最初只是想通过print来实现点阵字,实现了之后又想加一些应用场景。于是就往动态展现歌词方向靠拢,这个功能得到初步解决后就要面临输出展示方式的问题,所以又引出这篇中关于图形界面的实现。


现在回顾,有种莫名其妙做了个播放器的感觉,以后还是应该先定方向再来将其细节化比较好吧。


写给新手


你看,Python入门阶段的编码并不难,想要实现某个功能,搜索相关内容,理解思路后自己照着把代码写出来,有了新的想法继续添加完善,慢慢地聚合为一个“小项目”。


当然,基础知识的学习是必须的,不然每次做项目写代码都去查,效率太低;而且基础扎实了,更容易产生新奇简介的思路,是非常有成就感的。


学习Python,只是缺一个理由来开始,一个理由来坚持。


评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值