2015-10-28 39 views
1

我刚开始Kivy编程,有一个问题做一个布局的认识:为什么我的RectangleWidget不是全屏

import kivy 
kivy.require('1.9.0') 
from kivy.app import App 
from kivy.uix.floatlayout import FloatLayout 
from kivy.core.window import Window 
from kivy.uix.widget import Widget 
from kivy.graphics import Rectangle, Color 

class CornerRectangleWidget(Widget): 
    def __init__(self, **kwargs): 
     super(CornerRectangleWidget, self).__init__(**kwargs) 
     with self.canvas: 
      Color(1, 0, 1, 1) 
      self.rect = Rectangle(size_hint=(1,None),height=48) 

class ControllerApp(App): 
    def build(self): 
     Window.clearcolor = (1, 0, 0, 1) 
     root = FloatLayout(size_hint=(1,1)) 
     root.add_widget(CornerRectangleWidget()) 
     return root 

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

为什么我CornerRectangleWidget保持这么小。我想要一个Fullscreen和CornerRectangleWidget的FloatLayout。

其实我想要将Widget“CornerRectangleWidget”构建为一个浮动顶部工具栏,其根部Widget的“x尺寸”为“FloatLayout size_hint =(1,None)”!怎么做?

回答

0

矩形没有size_hint,你需要设置pos和size。

您还需要绑定到一个函数来更新它的位置,当小部件位置发生变化时,如__init__它将具有默认pos(0,0)和大小(100,100)。这被描述为here

相关问题