有没有一种方法可以配置.kivy窗口的最小大小和最大大小。例如,以下代码允许在执行时设置默认值并使它不可调整大小:
Config.set('graphics','width',500)
Config.set('graphics','height',400)
Config.set('graphics', 'resizable', False)
我正在寻找的是使其可调整大小,但具有大小限制。我试图在API上搜索它,但找不到。
答案 0 :(得分:2)
您可以通过覆盖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
答案 1 :(得分:1)
要为窗口设置最小尺寸,请使用此部分代码:
from kivy.core.window import Window
Window.size = (500, 400)
Window.minimum_width, Window.minimum_height = Window.size
答案 2 :(得分:0)
在导入其他所有kivy之前,请设置默认的kivy图形值。在大多数情况下,理想位置在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中是否有其他变量。