Kivyの環境構築からHello Worldと表示するまで

  • 46
    Like
  • 2
    Comment
More than 1 year has passed since last update.

あらまし

勉強会を開催した際、環境構築に躓いてしまう例が多々あるようなのでメモ。
この方法が正解とは限らないのであしからず。

Kivyとは

ちなみに。KivyとはPython製のNUI開発のためのフレームワークのこと。クロスプラットフォームで動作しマルチタッチに対応したGUIアプリケーションなどを比較的容易に開発することできます。

Kivyの環境構築

環境構築を行なうため http://kivy.org/#download より、それぞれのOSにあったものをダウンロードしてください。
スクリーンショット 2015-11-10 12.06.38.png

Windows

Windowsの環境構築は比較的容易です。
まず最初に、ダウンロードしたKivy-1.9.0-py*.*-win32-x**.exeを実行します。(*はバージョン番号など)
そうすると、同一ディレクトリ内にKivy-1.9.0-py*.*-win32-x** というフォルダができます。中身は画像のような感じです。
dir_kivy.PNG

この中のkivy-*.*.batをダブルクリックして起動します。
kidou.PNG
そうすると環境設定済でコマンドプロンプトが立ち上がります。
あとは、ソースコードのあるディレクトリに移動するなりして
python <ファイル名>.py
と実行すればOKです。(コマンドプロンプトを閉じないように注意)

環境変数とかパスとかいろいろ設定してあげると便利になりますが、今回は割愛します。

Mac

Macも容易に構築できます。
ダウンロードしてきたKivy-1.9.0-rev3-osx.dmgを開くと以下、画像のように表示されます。
スクリーンショット 2015-11-10 12.04.18.png

まず、最初に KivyをApplicationsに入れましょう。その後、MakeSymlinksをダブルクリックして実行してください。
その後、ターミナルを起動して以下のように打ち込んでください。
$ kivy

上手くいくと画像のようにPythonが起動するはずです。
スクリーンショット 2015-11-10 11.50.19.png
これで環境構築は完了です。
あとは、ソースを書くだけ。実行は、
$ kivy <ファイル名>.py
とするだけです。

Linux(Ubuntu)

Ubuntuでの環境構築方法です。今回はvirtualenvなどの環境は使いません。
まず、最初に次のコマンドを実行して
$ sudo add-apt-repository ppa:kivy-team/kivy

Python2なら次のコマンドを
$ sudo apt-get install python-kivy

Python3なら次のコマンドを
$ sudo apt-get install python3-kivy

こちらは、試してないのでわかりませんが、コマンドは$ kivyもしくは $ pythonで実行できると思います。

Hello Worldと表示してみる

まずは普通に

main.py
import kivy
kivy.require('1.9.0')

from kivy.app import App
from kivy.uix.label import Label

class HelloApp(App):

    def build(self):
        return Label(text='Hello World')

if __name__ == '__main__':
    HelloApp().run()

Kv言語を使って

Kivyの特徴でもあるKv言語を使ってHello Worldと表示してみます。
Kv言語はCSSみたいなものだと思ってください。

main.py
import kivy
kivy.require('1.9.0')

from kivy.app import App
from kivy.uix.label import Label

class HelloApp(App):

    def build(self):
        return Label()

if __name__ == '__main__':
    HelloApp().run()

Kv言語を記述したファイル名はhello.kvとしてください。
これは、お約束でclass HelloApp(App): のクラス名のAppより前の名前にする必要があります。MainApp(App):だったらmain.kvという名前にします。

hello.kv
#:kivy 1.9.0

<Label>:
    text: 'Hello World'

実行結果(すこし、フォントサイズを大きくしてます)
hello_world.PNG

以上、環境構築からHello Worldまで表示する方法でした。
「間違っているよ」などは、お気軽コメントなどください。

Kivyの勉強会も定期的にに開催しているので、興味がありましたら・・・・。
http://pyky.connpass.com/

This post is the No.1 article of Kivy Advent Calendar 2015