我有一个绑定到StringProperty()
的kivy标签。我试图用Python来获取它的字符串。
class Screen1(Screen):
food_label = StringProperty()
def print_label(self):
print(Screen1.food_label)
它返回:
<StringProperty name=food_label>
我在def
:
self.manager.get_screen('screen_1').food_label = food
食物&#39;是String
。在屏幕上正确显示标签文本。
如何打印StringProperty()
中包含的实际字符串。
答案 0 :(得分:2)
Screen1.food_label
不起作用。虽然kivy属性看起来像Python静态变量,因为它们是在类的顶部声明的,但它们实际上是对象属性。如果你愿意的话
class Screen1(Screen):
food_label = 'Hello world'
def print_label(self):
print(Screen1.food_label)
这应该有效但是因为这些是Kivy Properties,你必须这样做
class Screen1(Screen):
food_label = StringProperty()
def print_label(self):
print(self.food_label)