LoginSignup
4
4

More than 5 years have passed since last update.

Kivyを使ってアプリを作ろう(UIのデザインを変えよう)

Posted at

はじめに

Kivyを使っていて、py(Pythonソース)だけで実行すると、基本的に、4:3の無骨なスクリーンにパーツが適当に配置されてしまいます。
これだと、何とも使いにくいので、サイズを調整したり、UIに色を付けたり、ボタンに画像を付けたり、背景に枠を付けたりと、GUIアプリらしい外見にしていきたいです。
そこで登場するのが、kvファイルです。こちらは、レイアウトや変数を定義する外部ファイルです。

まず、pyでアプリのひな形を作ろう

このあたりはさくっと行きます。

sample.py
#-*- coding: utf-8 -*-

# 例によって、単純なものから作るので
# Labelを読み込みます

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

Builder.load_file('kgui.kv')

class KivyGui(App):
    def build(self):
        return self

if __name__ == "__main__":
    KivyGui().run()

次にkvファイルを作ろう

で、kvファイルを作るにあたって、ファイル名とかどうやってpyから指定するの?
という方もいると思います、↑のソースを見ていただくとなにやらBuilderというライブラリが読み込まれていると思います。
これが、kvファイルを読み込むためのライブラリです、暗黙の了解として、ソース名.py、ソース名.kv、クラス名.kvが読み込まれるように
なっていますが、明示的に読んだほうがもやもやしないという方は、上のように指定しましょう。

kgui.kv
<KivyGui>:
    Label:
        # ソース側で読み込んだライブラリ名を指定します、ここではLabelを指定しましたので
        # Labelについての修飾を書くということになります
        text: "Hello World" ## Hello Worldを
        font_size: 70       ## 70pxにして
        color: 1,0,1,1      ## 色の指定をします[R(赤色),G(黄色),B(青色),A(透明度)]の指定です。
        ## すごいわかりにくいですが、(0.00~1.00)で指定し、1.00が最大なので、灰色とかは :0.25,0.25,0.25,1といった具合です
        ## Markup型の表記もできるので、慣れないかもという人markup型をお勧めします
        # markup: True
        # text: '[size=70][color=FF00FF]Hello World[/color][/size]'

ちょっとMarkUP記法について触れたので、軽く説明を。

[b][/b] : 太字
[i][/i] : イタリック
[u][/u] : 下線
[s][/s] : 取り消し線
[font=<str>][/font]      : フォント名/フォントファイル
[size=<integer>][/size]  : フォントサイズ [6 - ]
[color=#<color>][/color] : フォントカラー16進 [#000000 - #FFFFFF]
[ref=<str>][/ref] : 参照リンク
[anchor=<str>] : 参照先のアンカー
[sub][/sub] : 下付き
[sup][/sup] : 上付き

次は本格的な(?)アプリを作っていきたいと思います

4
4
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
4
4