如何将标签大小调整为我的屏幕尺寸?

时间:2020-08-19 03:58:03

标签: python kivy

嗨,我已经创建了这个奇异的应用程序。我只想知道如何将标签调整为整个屏幕的大小。而且,如果我用鼠标调整屏幕大小,标签也会将自身调整为该屏幕大小。我知道要执行此操作,我们需要使用size: root.width, root.height。但这是在kivy文件中完成的。如果我想在自己的python文件中执行此操作怎么办? 感谢您的建议。

请参考以下代码:

import kivy
from kivy.app import App
from kivy.uix.label import Label
from kivy.uix.gridlayout import GridLayout
from kivy.uix.widget import Widget

class MyGrid(Widget):
    def __init__(self, **kwargs):
        super(MyGrid, self).__init__(**kwargs)
        self.inner = GridLayout()
        self.inner.cols = 1
        self.add_widget(self.inner)
        self.inner.add_widget(Label(text = 'Hi!'))


class MyApp(App):
    def build(self):
        return MyGrid()


if __name__ == '__main__':
    MyApp().run()

1 个答案:

答案 0 :(得分:0)

您可以使用Window.heightWindow.width属性以及on_size方法来实现。如下面的修改代码所示:

import kivy
from kivy.app import App
from kivy.uix.label import Label
from kivy.uix.gridlayout import GridLayout
from kivy.uix.widget import Widget
from kivy.core.window import Window

class MyGrid(Widget):
    def __init__(self, **kwargs):
        super(MyGrid, self).__init__(**kwargs)
        self.inner = GridLayout()
        self.inner.cols = 1
        self.add_widget(self.inner)
        self.inner.add_widget(Label(text = 'Hi!'))

    def on_size(self, *args):
        self.inner.height = Window.height
        self.inner.width = Window.width

class MyApp(App):
    def build(self):
        return MyGrid()


if __name__ == '__main__':
    MyApp().run()