有没有一种方法可以设置kivy窗口的最小大小和最大大小。例如,以下代码允许在执行时设置默认值并使其不可调整大小:
Config.set('graphics','width',500)
Config.set('graphics','height',400)
Config.set('graphics', 'resizable', False)
我需要的是可以调整大小但有尺寸限制的内容。我试图在API中搜索,但找不到相关信息。
有没有一种方法可以设置kivy窗口的最小大小和最大大小。例如,以下代码允许在执行时设置默认值并使其不可调整大小:
Config.set('graphics','width',500)
Config.set('graphics','height',400)
Config.set('graphics', 'resizable', False)
若要设置窗口的最小尺寸,请使用以下代码段:
from kivy.core.window import Window
Window.size = (500, 400)
Window.minimum_width, Window.minimum_height = Window.size
main.py
中。from kivy import Config
Config.set('graphics', 'width', '1200')
Config.set('graphics', 'height', '800')
Config.set('graphics', 'minimum_width', '800')
Config.set('graphics', 'minimum_height', '600')
import kivy
# ...
查看API文档以获取其他变量信息。
您可以通过重写do_layout
函数来检查大小变化来实现。
这个例子检查大小是否大于500,400。
from kivy.core.window import Window
class MyLayout(StackLayout):
def __init__(self, **kwargs):
super(MyLayout, self).__init__(**kwargs)
def do_layout(self, *args, **kwargs):
super(MyLayout, self).do_layout()
width, height = Window.size
if width > 500:
Window.size = 500, Window.size[1]
if height > 400:
Window.size = Window.size[0], 400