Python 3.x 使用kivy从类继承变量
我有一个ScreenManagement和几个继承Screen类的类 每个类都有方法,在这些方法中依次声明变量。与程序交互时发生变化的一个变量是login变量。如何从映像上的任何类访问这些类中的任何变量 这是我的MainProgram类,带有登录变量: 如何从具有相同类结构的MessagePage类中的MainProgram类获取并使用login变量? 换句话说,我需要以某种方式在程序的所有页面之间传递变量Python 3.x 使用kivy从类继承变量,python-3.x,kivy,kivy-language,Python 3.x,Kivy,Kivy Language,我有一个ScreenManagement和几个继承Screen类的类 每个类都有方法,在这些方法中依次声明变量。与程序交互时发生变化的一个变量是login变量。如何从映像上的任何类访问这些类中的任何变量 这是我的MainProgram类,带有登录变量: 如何从具有相同类结构的MessagePage类中的MainProgram类获取并使用login变量? 换句话说,我需要以某种方式在程序的所有页面之间传递变量 将id:main\u program添加到ScreenManagement:的实例化
id:main\u program
添加到ScreenManagement:
的实例化子项(MainProgram:
),以便可以引用类MainProgram中声明的所有属性MessagePage
访问MainProgram
中的login
属性,请使用kv文件中的root.manager.ids.main\u program.login
。在python代码中使用self.manager.ids.main_程序.login来自kivy.properties导入StringProperty
login=StringProperty(“”)
我只尝试获取MainProgram类方法中定义的login变量,但他没有看到它,他看到的是类中立即声明的函数和变量,而不是该类方法中声明的变量。如何解决这个问题?您必须在class Main程序中声明class属性,
login
。详情请参阅更新后的帖子。谢谢!我想出来了
ScreenManagement:
RegistrationPage:
PageOne:
MainProgram:
id: main_program
MessagePage:
from kivy.properties import StringProperty
...
class MainProgram(Screen):
login = StringProperty('')
...