【问题标题】:KIVY: How can I get the correct class?KIVY:我怎样才能得到正确的课程?
【发布时间】:2020-09-25 10:42:13
【问题描述】:

我曾经做过

MDApp.get_running_app().root.ids[some_id].focus = True

而且效果很好。现在我添加了一个屏幕管理器,这给了我错误:KeyError: 'some_id'

我试过了

MainLayout().ids[some_id].focus = True

因为屏幕的类是 MainLayout 并且它不会抛出错误但它不会做任何事情......如果重要的话,另一个屏幕被命名为 LoadingScreen。有什么想法吗?

【问题讨论】:

    标签: python class kivy


    【解决方案1】:

    因为你有一个屏幕管理器试试这个:

    ScreenManager:
            id: screenmanager
            SomeScreen:
               name: 'somescreen'
               id: somescreen
    
    MDApp.get_running_app().root.ids['somescreen'].ids['some_id'].focus = True
    
    

    那么它是做什么的,它转到在屏幕管理器中定义的类名并从该类中获取指定的 id。请注意,您必须提供屏幕管理器中定义的名称

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2022-01-06
      • 2021-07-10
      • 1970-01-01
      • 2020-03-28
      • 1970-01-01
      • 1970-01-01
      • 2018-03-16
      • 1970-01-01
      相关资源
      最近更新 更多