我是python和kivy的新手。我正在尝试一个小游戏,我在起步本身中受到了冲击,我想使用浮动布局,并使小部件从上到下落入其中。小部件的大小是(0.1,0.1),运动的动画将像素作为选项,我如何知道布局中x和y角落像素的最大限制,我试图通过使用来自Module:kivy.metrics的dp(value),但它只显示为0,0。浮动布局中的动画KIVY
from kivy.app import App
from kivy.uix.floatlayout import FloatLayout
from kivy.metrics import dp
class Test(FloatLayout):
def __init__(self, **kwargs):
super(Test,self).__init__(**kwargs)
print(dp(self.size))
class game(App):
def build(self):
return Test()
if __name__ == '__main__':
game().run()
代码只是我如何试图获得dp的一个例子。如何在不知道可能的最大像素的情况下移动小部件。
使用你的代码,我可以找到窗口的大小,但不是小部件,如果我将小部件大小保留为(0.5,0.5),那么我无法知道移动小部件的实际大小。有没有办法来解决这个问题。请告诉我,我来自VB.net WPF,所以Python和基维对我来说都是新手,但尽可能快地学习。 – surpavan
@surpavan“[800,600]”的大小是自动调整为父窗口大小后的“Test”小部件的实际最终大小。如果您在示例中将“测试”窗口小部件大小提示设置为(0.5,0.5),则它只会调整为窗口大小的一半,您将在输出中获得“[400.0,300.0]”。 – famousgarkin
明白了,但是,如果每次都调整大小,我该如何编程基于px的动画。而且,在开始时,px值与开始后的值不同。而且我认为如果布局vs Widget的大小和位置上会有更好的文章,那么kivy文档是清晰的,但不是解释性的。谢谢。 – surpavan