【问题标题】:Why my kivy app is not showing it content?为什么我的 kivy 应用程序没有显示内容?
【发布时间】:2019-10-08 02:39:30
【问题描述】:

我的代码有问题,该应用似乎可以运行,但不显示内容。 我不知道为什么它不显示内容。 这是我的代码:

from kivy.app import App
from kivy.uix.screenmanager import ScreenManager, Screen


class entry(Screen):
    pass


class secret(Screen):
    pass


SM = ScreenManager()
SM.add_widget(entry(name="entry"))
SM.add_widget(secret(name="secret"))


class ScreenApp(App):
    def build(self):
        return SM


if __name__ == "__main__":
    ScreenApp().run()

还有我的kv文件

<entry>
    GridLayout:
        cols: 3

        Label:
            text: "Enter the password"
        TextInput:
            id: password
            multiline: False
        Button:
            text: "Enter"
            on_press: root.manager.current = "secret" if password.text == "love" else "Screen 1"


<secret>
    GridLayout:
        cols: 1

        Label:
            text: "You have reached my secret"
        Button:
            text: "Back"
            on_press: root.manager.current = "entry"

我做错了什么? de python或kv文件有什么问题吗?

【问题讨论】:

    标签: python kivy


    【解决方案1】:

    你必须这样做:

    class ScreenApp(App):
        def build(self):
            SM = ScreenManager()
            SM.add_widget(entry(name="entry"))
            SM.add_widget(secret(name="secret"))
            SM.current = 'entry'
            return SM
    

    如果你在文本框中不输入'love'会出错,因为它调用Screen1,但你没有定义Screen1

    【讨论】:

      猜你喜欢
      • 2014-03-08
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-06-10
      相关资源
      最近更新 更多