安庆大理运城常德铜陵江西
投稿投诉
江西南阳
嘉兴昆明
铜陵滨州
广东西昌
常德梅州
兰州阳江
运城金华
广西萍乡
大理重庆
诸暨泉州
安庆南充
武汉辽宁

python学习源码分享简易音乐播放器

5月25日 斩情道投稿
  Function:音乐播放器Author琴棋书画importosimportsysimporttimeimportrandomimportconfigparserfromPyQt5。QtGuiimportfromPyQt5。QtCoreimportfromPyQt5。QtWidgetsimportfromPyQt5。QtMultimediaimport音乐播放器classmusicPlayer(QWidget):definit(self):super()。init()self。initialize()初始化definitialize(self):self。setWindowTitle(音乐播放器v1。0琴棋书画)self。setWindowIcon(QIcon(icon。ico))self。songslist〔〕self。songformats〔mp3,m4a,flac,wav,ogg〕self。settingfilenamesetting。iniself。playerQMediaPlayer()self。curpathos。path。abspath(os。path。dirname(file))self。curplayingsongself。isswitchingFalseself。ispauseTrue界面元素播放时间self。label1QLabel(00:00)self。label1。setStyle(QStyleFactory。create(Fusion))self。label2QLabel(00:00)self。label2。setStyle(QStyleFactory。create(Fusion))滑动条self。sliderQSlider(Qt。Horizontal,self)self。slider。sliderMoved〔int〕。connect(lambda:self。player。setPosition(self。slider。value()))self。slider。setStyle(QStyleFactory。create(Fusion))播放按钮self。playbuttonQPushButton(播放,self)self。playbutton。clicked。connect(self。playMusic)self。playbutton。setStyle(QStyleFactory。create(Fusion))上一首按钮self。previewbuttonQPushButton(上一首,self)self。previewbutton。clicked。connect(self。previewMusic)self。previewbutton。setStyle(QStyleFactory。create(Fusion))下一首按钮self。nextbuttonQPushButton(下一首,self)self。nextbutton。clicked。connect(self。nextMusic)self。nextbutton。setStyle(QStyleFactory。create(Fusion))打开文件夹按钮self。openbuttonQPushButton(打开文件夹,self)self。openbutton。setStyle(QStyleFactory。create(Fusion))self。openbutton。clicked。connect(self。openDir)显示音乐列表self。qlistQListWidget()self。qlist。itemDoubleClicked。connect(self。doubleClicked)self。qlist。setStyle(QStyleFactory。create(windows))如果有初始化setting,导入settingself。loadSetting()播放模式self。cmbQComboBox()self。cmb。setStyle(QStyleFactory。create(Fusion))self。cmb。addItem(顺序播放)self。cmb。addItem(单曲循环)self。cmb。addItem(随机播放)计时器self。timerQTimer(self)self。timer。start(1000)self。timer。timeout。connect(self。playByMode)界面布局self。gridQGridLayout()self。setLayout(self。grid)self。grid。addWidget(self。qlist,0,0,5,10)self。grid。addWidget(self。label1,0,11,1,1)self。grid。addWidget(self。slider,0,12,1,1)self。grid。addWidget(self。label2,0,13,1,1)self。grid。addWidget(self。playbutton,0,14,1,1)self。grid。addWidget(self。nextbutton,1,11,1,2)self。grid。addWidget(self。previewbutton,2,11,1,2)self。grid。addWidget(self。cmb,3,11,1,2)self。grid。addWidget(self。openbutton,4,11,1,2)根据播放模式播放音乐defplayByMode(self):if(notself。ispause)and(notself。isswitching):self。slider。setMinimum(0)self。slider。setMaximum(self。player。duration())self。slider。setValue(self。slider。value()1000)self。label1。setText(time。strftime(M:S,time。localtime(self。player。position()1000)))self。label2。setText(time。strftime(M:S,time。localtime(self。player。duration()1000)))顺序播放if(self。cmb。currentIndex()0)and(notself。ispause)and(notself。isswitching):ifself。qlist。count()0:returnifself。player。position()self。player。duration():self。nextMusic()单曲循环elif(self。cmb。currentIndex()1)and(notself。ispause)and(notself。isswitching):ifself。qlist。count()0:returnifself。player。position()self。player。duration():self。isswitchingTrueself。setCurPlaying()self。slider。setValue(0)self。playMusic()self。isswitchingFalse随机播放elif(self。cmb。currentIndex()2)and(notself。ispause)and(notself。isswitching):ifself。qlist。count()0:returnifself。player。position()self。player。duration():self。isswitchingTrueself。qlist。setCurrentRow(random。randint(0,self。qlist。count()1))self。setCurPlaying()self。slider。setValue(0)self。playMusic()self。isswitchingFalse打开文件夹defopenDir(self):self。curpathQFileDialog。getExistingDirectory(self,选取文件夹,self。curpath)ifself。curpath:self。showMusicList()self。curplayingsongself。setCurPlaying()self。label1。setText(00:00)self。label2。setText(00:00)self。slider。setSliderPosition(0)self。ispauseTrueself。playbutton。setText(播放)导入settingdefloadSetting(self):ifos。path。isfile(self。settingfilename):configconfigparser。ConfigParser()config。read(self。settingfilename)self。curpathconfig。get(MusicPlayer,PATH)self。showMusicList()更新settingdefupdateSetting(self):configconfigparser。ConfigParser()config。read(self。settingfilename)ifnotos。path。isfile(self。settingfilename):config。addsection(MusicPlayer)config。set(MusicPlayer,PATH,self。curpath)config。write(open(self。settingfilename,w))显示文件夹中所有音乐defshowMusicList(self):self。qlist。clear()self。updateSetting()forsonginos。listdir(self。curpath):ifsong。split(。)〔1〕inself。songformats:self。songslist。append(〔song,os。path。join(self。curpath,song)。replace(,)〕)self。qlist。addItem(song)self。qlist。setCurrentRow(0)ifself。songslist:self。curplayingsongself。songslist〔self。qlist。currentRow()〕〔1〕双击播放音乐defdoubleClicked(self):self。slider。setValue(0)self。isswitchingTrueself。setCurPlaying()self。playMusic()self。isswitchingFalse设置当前播放的音乐defsetCurPlaying(self):self。curplayingsongself。songslist〔self。qlist。currentRow()〕〔1〕self。player。setMedia(QMediaContent(QUrl(self。curplayingsong)))提示defTips(self,message):QMessageBox。about(self,提示,message)播放音乐defplayMusic(self):ifself。qlist。count()0:self。Tips(当前路径内无可播放的音乐文件)returnifnotself。player。isAudioAvailable():self。setCurPlaying()ifself。ispauseorself。isswitching:self。player。play()self。ispauseFalseself。playbutton。setText(暂停)elif(notself。ispause)and(notself。isswitching):self。player。pause()self。ispauseTrueself。playbutton。setText(播放)上一首defpreviewMusic(self):self。slider。setValue(0)ifself。qlist。count()0:self。Tips(当前路径内无可播放的音乐文件)returnprerowself。qlist。currentRow()1ifself。qlist。currentRow()!0elseself。qlist。count()1self。qlist。setCurrentRow(prerow)self。isswitchingTrueself。setCurPlaying()self。playMusic()self。isswitchingFalse下一首defnextMusic(self):self。slider。setValue(0)ifself。qlist。count()0:self。Tips(当前路径内无可播放的音乐文件)returnnextrowself。qlist。currentRow()1ifself。qlist。currentRow()!self。qlist。count()1else0self。qlist。setCurrentRow(nextrow)self。isswitchingTrueself。setCurPlaying()self。playMusic()self。isswitchingFalserunifnamemain:appQApplication(sys。argv)guimusicPlayer()gui。show()sys。exit(app。exec())
投诉 评论

python学习源码分享简易音乐播放器Function:音乐播放器Author琴棋书画importosimportsysimporttimeimportrandomimportconfigparserfromPyQ……中国空间站获4大突破!神舟14号航天员选定,可能有国外的吗?在神舟13号任务完成之后,神舟14号任务就是我们最为关键性的了,当然,在神舟14号之前,天舟4号也是关键性的任务,因为这是为神舟14号航天员们进入中国空间站之后的重大保障,它会……你深信不疑的8条健康常识,或许都是错的!看看你被套路过吗?老一辈对于养生的健康常识非常上心,作为年轻人,经常会在相亲相爱一家人群里收到父母分享健康常识的文章或视频,文章或视频结尾一定会有一句:看完点赞并转发到你爱的人。虽然有时候……行走河南读懂中国冬雪又至尧山入画11月13日上午,鲁山县境内的尧山景区(石人山)迎来了入冬第一场雪。第一场雪的如约而至,让等了好久的心情莫名激动。雪花像洁白的花瓣,像满天飞舞的羽毛,像一群小天使在跳舞。……李国庆称将创办响珰珰电商在兴趣电商领域还想再搏一把Tech星球11月18日消息,近日,在2022搜狐财经峰会中,早晚读书、当当网创始人李国庆提到,我确实傻白甜,确实我什么事都很乐观,包括有人说你企业没了家也没了,我没有,我依然……人世间最好的相遇,不是在路上,而是在心上连日来,一场小小的流感似乎也能摧毁我的意志,整日的无精打采,喜欢做的事情也失了兴致,人总是在病中显得格外的脆弱,在金钱与利益面前,身体的健康却显得如此的弥足珍贵。由于思想……世界杯32支球队踢完球,想出了32句话世界杯三十二强厮杀,三十支队黯然退出舞台,回首过去的比赛日,三十二队的旅程,各自给球迷许多经典难忘片段,同时给我们32段人生哲理。加纳队长阿尤射丢点球。一、金钱并非……这8部剧热播正酣,李易峰新剧热度第一,于正这部大剧要火出圈2022开年两部大剧《人世间》《开端》之后,国产剧再次迎来一波阵发性低迷。期间虽然有《心居》《亲爱的小孩》《山河明月》《风起陇西》等一系列讨论度颇高的准爆款,但终究是雷声……一个古方两味药,用它煮水喝,渗湿燥湿,可治头痛耳鸣,视物模糊大家好,我是屈医生。今天给大家分享一个古方,泽泻汤,简单两味药煮水喝,渗湿燥湿,既可治疗头痛,头晕,耳鸣,视物模糊,如果你有这方面的困扰呢,这篇文章你可一定要收藏好了,或许对你……英锦赛8强决出4席!十位种子出局,奥沙利文强势,丁俊晖孤军奋2022斯诺克英锦赛18决赛结束了首个比赛日的较量,刚结束的两场比赛,山姆克雷吉64击败了瑞恩戴、马克艾伦63击败了凯伦威尔逊。克雷吉是一名从资格赛上打上来的球员,正赛首……被姐姐的裙子美到了,丸子头配小外套拍大片,用美字不足以形容很多人在选择衣服的时候,一定要追求纹饰感或者是结构感,原因就在于他们认为缺少必要的装饰后,只凭借衣服本身的材料以及塑身的效果,是很难实现很完美的表现力的,因此他们会尽可能的添加……那么多人都有深海恐惧症,深海里到底有什么?海洋一直很神秘,据说,人类对于火星的了解,都多于海洋。迄今为止,有95的海域,仍然处于未知状态,至于海洋深处,更是让人望而却步。今天我们就来聊聊,深海中都有些什么?电影桥……
一辈子太短,珍惜吧35个自律的句子,骂醒颓废的自己2022年上半年卖地收入降三成土地财政模式将迎来怎样的未来?都没人旅游了还大涨70,这是什么神奇的商业模式?全机种制霸才能畅快爽玩北通阿修罗2pro多模版手柄3月Android手机好评榜出炉前十已无魅族身影,三星旗舰夺方舟生存进化玩家永生的秘密,利用克隆手段实现无限复活金蝶曹仰锋产业互联网时代企业变革与成长之路哈登已经超越韦德了吗?谁才是历史第三分卫?云南好宜居的城市,每家没有空调,晚上睡觉盖被子,避暑生活挺好华为Mate50横空出世硬刚iPhone14又有明星基金经理奔私,去年收益翻倍!还有外资私募加速进场16位女星生图照曝光,谁是真美人谁是照骗一目了然酒酿为什么不甜酒酿不甜的补救小技巧王健林1小时赚424万中国首富是怎么炼成的年轻人的冷幽默。玩手机要有度女性在以下个时期不能进行夫妻生活会加快身体衰老的李清照为什么被家暴李清照被家暴内幕扁豆散文常见职业病防治措施有哪些从天造句用从天造句大全学会帮助别人的作文范文离婚财产分割多久能完成?

友情链接:中准网聚热点快百科快传网快生活快软网快好知文好找七猫云易事利