我正在创建一个应用程序,在这个应用程序中,我确定了一个类中的一个变量,并需要将它转移到另一个类中。我想使用id,但这对不同的根小部件不起作用。后来我发现了factory,它看起来很有前途,似乎也有点用,但当我更新PopupColor类中的变量时,它并没有在DrawScreen类中更新。在
这是密码。在
生产日期:
class PopupColor(Popup):
color = [0,0,0,1]
def on_press_dismiss(self, colorpicker, *args):
print(self.color)
self.dismiss()
self.color = colorpicker.color
print(self.color)
class DrawScreen(Screen):
def testy(self):
self.color = Factory.PopupColor().color
print(self.color)
千伏:
^{pr2}$那我该怎么做?离我还有多远?在
编辑:所以看起来错误并不是真正的工厂部件,而是PopupColor中的变量不会永久改变。在
问题是当您更改属性时,您使用
self
,它引用了这个实例。但是,由于您创建了一个新的
PopupColor
对象,每次打开弹出窗口时,都需要将color
视为共享变量。你可以这样改变颜色:
这样可以将属性
color
视为与所有PopupColor
对象共享。在相关问题 更多 >
编程相关推荐