我有很多代码对于这个问题并不重要,所以我将解释我的小部件树是如何构建的。
我有两个屏幕和不同的布局,按钮和小部件。基本上是这样的:
ScreenManager:
Screen1:
Screen2:
FloatLayout:
Button1
Button2
Button3
Widget1
Widget2:
Label:
text:
pos: root.width*0.8, root.height*0.8
我想将标签置于Widget中,因为我将添加更多标签,但不知道如何访问Screen2宽度。如果我使用root.width,我得到的父窗口小部件的宽度小于窗口,并且不能使用它的比率。我尝试访问window.width但是它给了我一个错误ID。
如果有人能解释我如何通过ID访问不同的父母,我将不胜感激。谢谢!
答案 0 :(得分:2)
回答你的直接问题:
ScreenManager:
Screen1:
Screen2:
id: screen2
FloatLayout:
Button1
Button2
Button3
Widget1
Widget2:
Label:
text:
pos: screen2.width*0.8, screen2.height*0.8
但是,使用布局类可能会更好,以避免必须手动指定这些东西。