简体   繁体   English

如何在 kivy 中动态调整窗口大小?

[英]How do i resize dynamically a window in kivy?

我在构建桌面应用程序时遇到了问题,因为在不同的屏幕中我需要不同的窗口大小(如登录、菜单等),我需要做什么?

You can change the window size in the screens on_pre_enter event.您可以在屏幕on_pre_enter事件中更改窗口大小。 Its probably best to have no transition when changing window size while switching screen.在切换屏幕时更改窗口大小时最好没有过渡。
Try this example:试试这个例子:

from kivy.app import App
from kivy.lang import Builder


KV = """
#:import Window kivy.core.window.Window
#:import NoTransition kivy.uix.screenmanager.NoTransition

ScreenManager:
    transition: NoTransition()
    Screen:
        on_pre_enter:
            Window.size = (400, 400)
        name: "scr1"
        Button:
            font_size: "40sp"
            text: "Next screen"
            on_release:
                root.current = "scr2"
    Screen:
        on_pre_enter:
            Window.size = (200, 50)
        name: "scr2"
        Button:
            font_size: "20sp"
            text: "Previous screen"
            on_release:
                root.current = "scr1"

"""


class MyApp(App):
    def build(self):
        return Builder.load_string(KV)

MyApp().run()

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM