2021-07-25
一起学习kyvy(二):页面布局三:BoxLayout
BoxLayout称为盒子布局,是一种将部件水平(默认)或垂直排列的布局,类似于Android中的线性布局。如果不设置任何大小,部件将会以10像素的间距平分父窗口的大小。布局中,布局与子级间隔padding,默认为[0,0,0,0]表示[左边,上边,右边,下边],也可只设一个参数[周边间隔],及两个参数[padding_horiezotal,padding_vertical];子级与子级间隔spacing,默认为0。示例:
myboxlayoutmain.py
from kivy.app import App
from kivy.uix.boxlayout import BoxLayout
class MyBoxLayoutWidget(BoxLayout):
def __init__(self, **kwargs):
super(MyBoxLayoutWidget, self).__init__(**kwargs)
class MyBoxLayoutApp(App):
def build(self):
return MyBoxLayoutWidget()
if __name__ == "__main__":
MyBoxLayoutApp().run()
myboxlayout.kv
<MyBoxLayoutWidget>:
orientation: 'vertical'
spacing: 10
Button:
text: 'Bt0'
font_size: 20
background_color: 0, 1, 0, 1
Button:
text: 'Bt1'
font_size: 20
background_color: 0, 0, 1, 1
Button:
text: 'Bt2'
font_size: 20
background_color: 1, 0, 1, 1
Button:
text: 'Bt3'
font_size: 20
background_color: 1, 0, 0, 1
效果: