[Pythonアプリ開発] Kivyを使ったpythonインターフェース [導入編]

ここではプログラミング言語としてpythonを使い、別ウィンドウでタップやドラッグなどによって操作可能なデスクトップアプリを作ることを目指します。

 注:このページの想定読者層
・macOS(or Linux/Unix)ユーザ、もしくはそれに準ずる環境構築ができている
・pythonを導入済みで、ある程度触ったことがある(pythonは有名な高級言語で、参考ページも豊富なため、それらを参照しながら読むことはもちろん可能)



アプリ開発のためのライブラリは、Tkinter、Kivy、PyQt、wxWidgets、wxPythonなど様々ありますが、ここでは他ライブラリと組み合わせてWindows, Mac, Androidと手広く応用可能な「Kivy」を使っていきます。


Kivyは、コマンドライン(macのターミナル)から、
pip install kivy
でインストール可能です。
この時「Kivy-Garden」も一緒にインストールされます。
Kivy-Gardenを使うと、様々なモジュールが使用できるようになります。
例えば、

・タブ切り替え
・画面遷移アニメーション
・数値の選択(ダイヤル方式やバーなど多種)
・タップ・ドラッグ操作補助

などといった基本的なものはもちろん、さらには

・メディアプレーヤー
・3DCGデータ表示

など多少マニアックなものまであります。


モジュール一覧:
https://github.com/kivy-garden


これらのモジュールを使う際には、再びコマンドラインから
garden install androidtabs
と打つことで使えるようになります(上の例ではandroidtabsモジュールをインストール)。


サンプルプログラム:
from kivy.app import App
from kivy.uix.boxlayout import BoxLayout
from kivy.uix.button import Button
from kivy.garden.androidtabs import *

class MyTab(BoxLayout, AndroidTabsBase):
    pass

class MyApp(App):
    def build(self):
        android_tabs = AndroidTabs()
        tabnames=["New","Library"]
        for n in range(len(tabnames)):
            tab = MyTab(text=tabnames[n])
            android_tabs.add_widget(tab)
        return android_tabs

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


実行結果(少し見にくいですが上部のスライドでタブを切り替えられます):


コメント

このブログの人気の投稿

旧バージョンのiMovieを入れる方法

TWRP公式サポートされてないAndroid端末でシステムインストールした話

[UTAU] Garagebandで作ったボーカルメロディーをUTAUに読ませる