資源簡介
個人開發的一個Kivy項目,每行都有注釋,適合剛入門的Kivy學習者學習,通過這個項目讓自己很容易了解學習Kivy,達到自己能做項目的目的
代碼片段和文件信息
#coding:utf-8
‘‘‘
Audio?example
=============
This?example?plays?sounds?of?different?formats.?You?should?see?a?grid?of
buttons?labelled?with?filenames.?Clicking?on?the?buttons?will?play?or
restart?each?sound.?Not?all?sound?formats?will?play?on?all?platforms.
All?the?sounds?are?from?the?http://woolyss.com/chipmusic-samples.php
“THE?FREESOUND?PROJECT“?Under?Creative?Commons?Sampling?Plus?1.0?License.
‘‘‘
import?kivy
(‘1.0.8‘)
from?kivy.app?import?App
from?kivy.uix.button?import?Button
from?kivy.uix.boxlayout?import?BoxLayout
from?kivy.core.audio?import?SoundLoader
from?kivy.properties?import?StringProperty?objectProperty?NumericProperty
from?glob?import?glob
from?os.path?import?dirname?join?basename
#?點擊按鈕播放類AudioButton
class?AudioButton(Button):
????#文件名
????filename?=?StringProperty(None)
????#聲音
????sound?=?objectProperty(None?allownone=True)
????#音量調用了kivy中的NumericProperty
????volume?=?NumericProperty(1.0)
????#下點擊后操作
????def?on_press(self):
????????#如果沒播放,就播放點擊按鈕下的文件
????????if?self.sound?is?None:
????????????self.sound?=?SoundLoader.load(self.filename)
????????#?stop?the?sound?if?it‘s?currently?playing
????????#如果狀態不等于stop就stop他
????????if?self.sound.status?!=?‘stop‘:
????????????self.sound.stop()
????????#下聲音大小
????????self.sound.volume?=?self.volume
????????#下真正播放??
????????self.sound.play()
????def?release_audio(self):
????????if?self.sound:
????????????self.sound.stop()
????????????self.sound.unload()
????????????self.sound?=?None
????#控制聲音大小
????def?set_volume(self?volume):
????????self.volume?=?volume
????????if?self.sound:
????????????self.sound.volume?=?volume
#AudioBackground
class?AudioBackground(BoxLayout):
????pass
class?AudioApp(App):
????def?build(self):
????????root?=?AudioBackground(spacing=5)
????????for?fn?in?glob(join(dirname(__file__)?‘*.wav‘)):
????????????btn?=?AudioButton(
????????????????text=basename(fn[:-4]).replace(‘_‘?‘?‘)?filename=fn
????????????????size_hint=(0.3?0.2)?halign=‘center‘
????????????????size=(12?12)?text_size=(118?None)
????????????????font_name?=?‘ziti.ttf‘)
????????????root.ids.sl.add_widget(btn)
????????return?root
????def?release_audio(self):
????????for?audiobutton?in?self.root.ids.sl.children:
????????????audiobutton.release_audio()
????def?set_volume(self?value):
????????for?audiobutton?in?self.root.ids.sl.children:
????????????audiobutton.set_volume(value)
if?__name__?==?‘__main__‘:
????AudioApp().run()
?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????文件???????1277??2017-03-09?11:32??micanlai\audio.kv
?????文件??????31433??2016-12-28?11:39??micanlai\background.jpg
?????文件????4314872??2017-01-10?16:10??micanlai\bitter_cat_sound.wav
?????文件????2226904??2017-01-10?16:14??micanlai\bron_cat?13s.wav
?????文件????1473196??2017-01-10?16:14??micanlai\cat_battle_sound.wav
?????文件??????40044??2017-01-09?10:28??micanlai\Cat_Sound?1s.wav
?????文件???13063052??2017-01-10?16:10??micanlai\continue.wav
?????文件???????7318??2017-01-11?16:35??micanlai\dondake.png
?????文件????4996324??2017-01-10?16:12??micanlai\kitty_sound?28s.wav
?????文件?????821972??2017-01-10?16:11??micanlai\kitty_sound?5s.wav
?????文件?????160652??2017-01-10?16:11??micanlai\kitty_sound?7s.wav
?????文件?????160652??2017-01-10?16:11??micanlai\kitty_sound01.wav
?????文件???????2576??2017-03-09?11:25??micanlai\main.py
?????文件????4168180??2017-01-10?16:15??micanlai\old_cat?24s.wav
?????文件??????20780??2017-01-10?16:11??micanlai\old_cat01?1s?.wav
?????文件??????14276??2017-01-10?16:09??micanlai\old_cat_02?1s.wav
?????文件????1395252??2015-03-05?14:20??micanlai\ziti.ttf
?????目錄??????????0??2017-01-11?16:58??micanlai\__pycache__
?????目錄??????????0??2017-07-26?20:53??micanlai
-----------?---------??----------?-----??----
?????????????32898760????????????????????19
評論
共有 條評論