プログラミングに手こずっている先生方、こんにちは。
ようやくプログラミング挑戦10日間達成しました!働きながらの学習なんで、遅いペースですが、着実に学んでおります。さて、10日間の成果として、自作タイマーを作成しました。作成といっても、1からコードを書いたわけではなく、他の方がブログに載せてくださっているものをコピペさせてもらいました(http://tkitao.hatenablog.com/entry/2014/10/10/083252)。
ここまでの道のりは、多くの先輩プログラマーの助けあってのものです。ここまでこれたのはとても嬉しく思います。
今回のタイマーでは、GUIには、Kivyを使っています。Kivyのインストールに少し苦労しましたが、無事できました。本当は、soundで、アラーム機能をつけたいのですが、いまいちわからず、その課題は次回に回します。
ちなみに、コードをきれいにブログにのせるやり方を、以下の方から学びました。SyntaxHighlighterというのを使っています。(http://1studying.blogspot.com/2017/04/blogger_93.html)
ブログ自体も少しずつ成長しています。感謝です。
作ってみた感想
成果物が実際に形として現れてくるのはとても嬉しいことです。作ったといっても、他の方が作成されたものをコピペして少しカスタマイズしただけですが、それでも達成感を感じました。「Python最低限レベル」として、コードに書いていることがわかって、自分の使い方に合わせて少し手直しをすることができる程度でいいのかなと思いました。
秒数を60秒ではなく10秒ごとにはできましたが、タイマーの音機能がまだできてないので、頑張ります。
このタイマーをさっそく、英語授業の中の”グルグル”や、スピーチのタイマーとして使っていきたいです。
ようやくプログラミング挑戦10日間達成しました!働きながらの学習なんで、遅いペースですが、着実に学んでおります。さて、10日間の成果として、自作タイマーを作成しました。作成といっても、1からコードを書いたわけではなく、他の方がブログに載せてくださっているものをコピペさせてもらいました(http://tkitao.hatenablog.com/entry/2014/10/10/083252)。
ここまでの道のりは、多くの先輩プログラマーの助けあってのものです。ここまでこれたのはとても嬉しく思います。
今回のタイマーでは、GUIには、Kivyを使っています。Kivyのインストールに少し苦労しましたが、無事できました。本当は、soundで、アラーム機能をつけたいのですが、いまいちわからず、その課題は次回に回します。
ちなみに、コードをきれいにブログにのせるやり方を、以下の方から学びました。SyntaxHighlighterというのを使っています。(http://1studying.blogspot.com/2017/04/blogger_93.html)
ブログ自体も少しずつ成長しています。感謝です。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 | from kivy.config import Config Config. set ( 'graphics' , 'width' , '300' ) Config. set ( 'graphics' , 'height' , '150' ) from kivy.lang import Builder from kivy.uix.widget import Widget from kivy.uix.boxlayout import BoxLayout from kivy.uix.label import Label from kivy.uix.button import Button from kivy.properties import BooleanProperty from kivy.properties import NumericProperty from kivy.clock import Clock from kivy.app import App Builder.load_string( ''' #:kivy 1.8.0 <kivytimer>: BoxLayout: orientation: 'vertical' pos: root.pos size: root.size Label: text: str(root.left_time) font_size: 100 BoxLayout: orientation: 'horizontal' size_hint: 1.0, 0.3 Button: text: '+10 seconds' font_size: 16 on_press: root.on_command('+10 seconds') Button: text: 'Stop' if root.is_countdown else 'Start' font_size: 16 on_press: root.on_command('start/stop') Button: text: 'Reset' font_size: 16 on_press: root.on_command('reset') ''' ) class KivyTimer(Widget): is_countdown = BooleanProperty( False ) left_time = NumericProperty( 0 ) def on_command( self , command): if command = = '+10 seconds' : self .left_time + = 10 elif command = = 'start/stop' : if self .is_countdown: self .stop_timer() elif self .left_time > 0 : self .start_timer() elif command = = 'reset' : self .stop_timer() self .left_time = 0 def on_countdown( self , dt): self .left_time - = 1 if self .left_time = = 0 : self .is_countdown = False return False def start_timer( self ): self .is_countdown = True Clock.schedule_interval( self .on_countdown, 1.0 ) pass def stop_timer( self ): self .is_countdown = False Clock.unschedule( self .on_countdown) pass class KivyTimerApp(App): def build( self ): return KivyTimer() if __name__ = = '__main__' : KivyTimerApp().run() |
作ってみた感想
成果物が実際に形として現れてくるのはとても嬉しいことです。作ったといっても、他の方が作成されたものをコピペして少しカスタマイズしただけですが、それでも達成感を感じました。「Python最低限レベル」として、コードに書いていることがわかって、自分の使い方に合わせて少し手直しをすることができる程度でいいのかなと思いました。
秒数を60秒ではなく10秒ごとにはできましたが、タイマーの音機能がまだできてないので、頑張ります。
このタイマーをさっそく、英語授業の中の”グルグル”や、スピーチのタイマーとして使っていきたいです。
No comments:
Post a Comment