Kivy公式サイトのKivy Crash Course 3 – More interesting widget interactionsを作ってみた!

この記事では、Kivy公式サイトと下記の本の章を対応づけての学習を記録しています。
見本通りに作っていったコードに遊びの要素を加えてカスタマイズしています。

Kivyというライブラリを使ってPythonでアプリを作って行く

Python自作サンプル集
Swiftでアプリ開発される方向け
これからプログラミングを始める方へ
プログラミングと資格について

Pythonでマルチタッチアプリを作るために、こちらの本で学んでいます。

Kivyの公式サイトは英語ばかりで泣きそうでしたが、この本を読んで行ったら公式サイトのサンプルアプリも作れるようになりました。

上の本の、3章の最後の演習問題を終えた所までで類題として作れるアプリです。
演習問題の解答のダウンロードは、この本の始めの方に書かれています。

Kivy Crash Course 3 – More interesting widget interactions

Video(YouTube)

このアプリは前回作った
Kivy Crash Course 1 – Making a simple Appで作ったコードを改変して、
好きな文字を入力して動かせるようにしたアプリです。

最初は「default」という単語を動かします。

エディタ Visual Studio Codeに書いていってターミナルで実行します。

「crash3」というフォルダを作って、その中に「main.py」というファイルにコードを書いていきます。

ウィジェットツリーです。

コードです。

from kivy.app import App

from kivy.uix.scatter import Scatter
from kivy.uix.label import Label
from kivy.uix.floatlayout import FloatLayout
from kivy.uix.textinput import TextInput
from kivy.uix.boxlayout import BoxLayout

class TutorialApp(App):
    def build(self):
        b=BoxLayout(orientation=’vertical’)
        t=TextInput(font_size=150,
        size_hint_y=None,
        height=200,
        text=’default’)
        f=FloatLayout()
        s=Scatter()
        l=Label(text=’default’,font_size=150)
        t.bind(text=l.setter(‘text’))
        f.add_widget(s)
        s.add_widget(l)
        b.add_widget(t)
        b.add_widget(f)
        return b


def some_function(*args):
print(‘text changed’)


if name == “main”:
TutorialApp().run()

このように動かせました。

好きな文字を動かしてみます。

「I love cat!!」

私は志村けんさんが好きなので、最後の所に「default」を「何だ、チミは!!」と表示されるようにカスタマイズします。

同じフォルダ「crash3」の中に日本語フォントを置いてみます。

Googleフォントから好きな日本語フォントを持ってきて、フォントファイルの名前をわかりやすく変えて実行してみます。

やり方はNRさんという方の動画が分かりやすいです。

このようになりました。

Kivyというライブラリを使ってPythonでアプリを作って行く

Python自作サンプル集
Swiftでアプリ開発される方向け
これからプログラミングを始める方へ
プログラミングと資格について

Kivy公式サイトのKivy Crash Course 1 – Making a simple Appを作ってみた!

この記事では、Kivy公式サイトと下記の本の章を対応づけての学習を記録しています。
見本通りに作っていったコードに遊びの要素を加えてカスタマイズしています。

Kivyというライブラリを使ってPythonでアプリを作って行く

Python自作サンプル集
Swiftでアプリ開発される方向け
これからプログラミングを始める方へ
プログラミングと資格について

Pythonでマルチタッチアプリを作るために、こちらの本で学んでいます。

Kivyの公式サイトは英語ばかりで泣きそうでしたが、この本を読んで行ったら公式サイトのサンプルアプリも作れるようになりました。

上の本の、3章の最後の演習問題を終えた所までで類題として作れるアプリです。
演習問題の解答のダウンロードは、この本の始めの方に書かれています。

公式サイト(英語)です。
Kivy Crash Course 1 – Making a simple App

その動画説明です。

このアプリは「Hello」を画面上の好きな位置に動かすといった、Floatを使った単純なアプリです。

エディタ Visual Studio Codeに書いていってターミナルで実行します。

「crash1」というフォルダを作って、その中に「main.py」というファイルにコードを書いていきます。

後で同じフォルダに日本語フォントを入れてカスタマイズします。

私は志村けんさんが好きなので、この記事の最後のところで、「Hello」を「あい〜〜〜ん」と表示されるようにカスタマイズします。

Helloという青いボタンが画面いっぱいの表示される所までプログラミングします。

このプログラムのウィジェットツリーになります。

そのコードです。

from kivy.app import App
from kivy.uix.button import Button

class TutorialApp(App):
    def build(self):
        #rgbaでボタンを色を青にする
        return Button(text=’Hello!’,
        background_color=(0,0,1,1),
        font_size=150)

if name == “main”:
TutorialApp().run()

コメントのrgbaですが、Rは赤、Gは緑、Bは青、最後のAは透明度です。

ターミナルに切り替えて、
「cd crash1」で「main.py」が入っているフォルダに移動し、
「python main.py」で実行します。

このように実行できました。

他の色を見てみます。


background_color=(1,0,0,1)


background_color=(0,1,0,1)

では、「Hello!」の文字を好きな位置に動かせるアプリを作っていきます。

コードです。

from kivy.app import App
from kivy.uix.scatter import Scatter
from kivy.uix.label import Label
from kivy.uix.floatlayout import FloatLayout

class TutorialApp(App):
    def build(self):
        f=FloatLayout()
        s=Scatter()
        l=Label(text=’Hello!’,font_size=150)
        f.add_widget(s)
        s.add_widget(l)
        return f

if name == “main”:
TutorialApp().run()

左下隅に文字が出ているので、それをマウスで移動します。

また、2つの点を右クリックしてHello!の大きさを変えられます。

最後に「Hello!」を、志村けんさんの「あい〜〜〜〜ん」にカスタマイズします。
同じフォルダ「crash1」の中に日本語フォントを置いてみます。

Googleフォントから好きな日本語フォントを持ってきて、フォントファイルの名前をわかりやすく変えて実行してみます。

やり方はNRさんという方の動画が分かりやすいです。

このようになりました。

Kivyというライブラリを使ってPythonでアプリを作って行く

Python自作サンプル集
Swiftでアプリ開発される方向け
これからプログラミングを始める方へ
プログラミングと資格について