python 在Kivy中根据窗口大小更改小部件的大小和位置

o75abkj4  于 2023-04-04  发布在  Python
关注(0)|答案(2)|浏览(212)

我最近一直在尝试使用Kivy库来制作可以在不同设备上运行的应用程序。众所周知,每个应用程序都会根据窗口大小和具有相同定义的元素来调整屏幕上的元素大小。由于我对Kivy的世界很陌生,我想知道如何才能做到这一点。
例如:
分辨率为1000 x750 x1c 0d1x
这是500 x350的分辨率

请注意文本如何随图像调整大小。
任何东西都将非常感激,谢谢!

lb3vh1jj

lb3vh1jj1#

在kivy中,大多数小部件都有一个名为size_hint的参数,顾名思义,它根据屏幕大小设置小部件的大小。它从0 to 1中取值。值0.5基本上意味着屏幕的一半。您可以使用size_hint_xsize_hint_y来定义x和y轴沿着大小,或者一起使用size_hint = (0.5,0.5)。此外,如果在某些情况下你不能使用size_hint,那么你可以使用Window.size来获取设备的屏幕尺寸作为元组。假设你想制作尺寸为x和y的50%的东西。那么你可以设置size = (Window.size[0]*0.5, Windows.size[1]*0.5) Window.size[0]基本上沿着x轴的长度,Window.size[1]是y轴的长度

yr9zkbsy

yr9zkbsy2#

这是非常简单的,当插入的大小,你的小部件在kv文件,u将需要除以2或任何数字取决于大小,你想你的小部件是。
按钮示例:text:“example”Size_hint:self.width/2,self. height/2 Pos_hint:self.width/2,self. height/2
使用Pos除以2,它将小部件设置为中心,并使用size_hint =将窗口的大小除以2或任何数字。由于窗口的变化,小部件的大小可以改变。
它也适用于font_size。

相关问题