Beispiel #1
0
    def build(self):

        # 设置背景尺寸(布局)
        def update_rect(layout, *args):
            # 布局矩形位置 = 布局位置
            layout.rect.pos = layout.pos
            # 布局矩形大小 = 布局大小
            layout.rect.size = layout.size

        # 浮动布局
        float_layout = FloatLayout()

        # 浮动布局画布锁
        with float_layout.canvas:
            # 背景颜色
            Color(1, 1, 1, 1)
            # 浮动布局矩形 = 矩形(位置=浮动布局位置,大小=浮动布局大小)
            float_layout.rect = Rectangle(pos=float_layout.pos, size=float_layout.size)
            # 浮动布局绑定(位置=布局矩形位置,大小=设置背景尺寸)
            float_layout.bind(pos=update_rect, size=update_rect)

        # 在布局内的300,200处添加一个为布局0.3,0.2大小的按钮
        button = Button(text='Hello FloatLayout', size_hint=(.3, .2), pos=(300, 200))

        # 布局加组件(按钮)
        float_layout.add_widget(button)

        # 返回布局
        return float_layout
Beispiel #2
0
 def create_top_bar(self):
     top_bar = FloatLayout(size_hint=(1, None), size=(1000, 60))
     with top_bar.canvas.before:
         top_bar.rect = Image(source=BKGD_LCHRC,
                              keep_ratio=False,
                              allow_stretch=True,
                              size_hint=(1, 1))
     top_bar.bind(pos=self.update_rect, size=self.update_rect)
     self.page_layout.add_widget(top_bar)
     return top_bar