前回レイアウトの種類の説明をしましたが、今回から実装していきます。
細かい内容は、省いて行きます!
理由としては、動きや見えた方が良いかなと思い実装します。
Box Layout
簡単に説明すると、Box Layoutは水平・垂直に分割できる。
main.pyファイルを作成し実装していきます。
実装
ラベルの説明とかは省きます。
-
python kivyでラベル表示
Relative Layout以外のレイアウトについては書いてきたので、ラベルやボタンについて書いていきます。今回はラベルについて書きます。 実装 実装するために、main.pyというファイルを作成します。 ソースコード '' ...続きを見る
''' boxlayout sample '''
from kivy.app import App
from kivy.uix.boxlayout import BoxLayout
from kivy.uix.label import Label
class BoxLayoutSample(BoxLayout):
"""
BoxLayoutSample here
:param BoxLayout:
"""
def __init__(self):
"""
__init__ here
:param self:
"""
super(BoxLayoutSample, self).__init__()
label = Label(text='boxlayout sample')
self.orientation = 'vertical'
self.add_widget(label)
box_layout2 = BoxLayout()
box_layout2.orientation = 'horizontal'
label2 = Label(text='boxlayout2 sample1')
label3 = Label(text='boxlayout2 sample2')
box_layout2.add_widget(label2)
box_layout2.add_widget(label3)
box_layout3 = BoxLayout()
box_layout3.orientation = 'vertical'
label4 = Label(text='boxlayout4 sample1')
label5 = Label(text='boxlayout5 sample2')
box_layout3.add_widget(label4)
box_layout3.add_widget(label5)
self.add_widget(box_layout2)
self.add_widget(box_layout3)
class MyApp(App):
"""
MyApp here
:param App:
"""
def build(self):
"""
build here
:param self:
"""
return BoxLayoutSample()
if __name__ == '__main__':
MyApp().run()
コード説明
- boxlayoutをインポートする
- orientationで水平(horizontal)なのか垂直(vertical)なのかを指定する
- orientationのデフォルトはhorizontal
今回BoxLayoutを継承してるけど、別に継承する必要は無い。
確認
水平と垂直にラベル表示されているのが確認できました。
まとめ
BoxLayoutを利用して、水平にラベル表示させたり、垂直にラベルを表示しています。
コードの内容自体は、pythonを理解していれば簡単な内容になっています。
BoxLayout以外にもレイアウトがあるので、試してみてください。
-
python kivy layout gridlayout
kivyのグリッドレイアウトについて書いていきます。 Grid Layout グリッドレイアウトとは名前の通りなんですが、セル単位を指定できます。 htmlで言うとtableとかofficeだとエクセルとかの表示されている枠になります。 枠 ...続きを見る