Help us understand the problem. What is going on with this article?

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

More than 3 years have 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/

Ds110
プログラミング言語教育を専門に研究をしています。 研究や趣味でPythonを使用しています。 Kivyの勉強会などをしています。
http://coriginate.com
Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
Comments
No comments
Sign up for free and join this conversation.
If you already have a Qiita account
Why do not you register as a user and use Qiita more conveniently?
You need to log in to use this function. Qiita can be used more conveniently after logging in.
You seem to be reading articles frequently this month. Qiita can be used more conveniently after logging in.
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
ユーザーは見つかりませんでした