Start_python’s diary

ふたり暮らし

アラフィフ夫婦のフリーランスプラン

Kivy ラベルとボタンを配置する(Python Kivyの取説・使い方 第2回)

ラベルとボタンを配置する方法

# フル画面を解除して画面の幅と高さを設定
from kivy.config import Config
Config.set('graphics', 'fullscreen', 0)
Config.set('graphics', 'width', 320)
Config.set('graphics', 'height', 568)
Config.set('graphics', 'resizable', 0)

from kivy.app import App
from kivy.uix.boxlayout import BoxLayout  # 追加部分
from kivy.uix.button import Label
from kivy.uix.button import Button  # 追加部分


# 追加部分
class MainScreen(BoxLayout):
    def __init__(self, **kwargs):
        super().__init__(**kwargs)

        self.add_widget(Label(text="hello"))
        self.add_widget(Button(text="World"))

class TestApp(App):
    def build(self):
        self.title = 'テスト'
        return MainScreen()

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

追加部分の説明

from kivy.uix.boxlayout import BoxLayout
レイアウトを使うために必要です。(今回はBoxLayoutを使っていきます)

from kivy.uix.button import Button
ボタンを使うために必要です。

class MainScreen(BoxLayout):
MainScreenクラスを作ります。

self.add_widget(Label(text="hello"))
ラベルに「hello」を表示します。

self.add_widget(Button(text="World"))
ボタンに「World」を表示します。

 

f:id:Start_python:20191210121156p:plain

BoxLayout 通常は横に並べて配置されます。

縦に並べるには次の一行を追加します。

class MainScreen(BoxLayout):
    def __init__(self, **kwargs):
        super().__init__(**kwargs)

        self.orientation = "vertical"  # 追加部分

        self.add_widget(Label(text="hello"))
        self.add_widget(Button(text="World"))

self.orientation = "vertical"
縦に並べて配置します。

f:id:Start_python:20191210123004p:plain

 

本日は以上です。次回はkvファイルを使ってレイアウトを変更してみます。

 

 

保存ファイル

lesson53.py

 

 

文責:Luke