Я довольно долго пытался выяснить, как обновлять метки с помощью python/kivy, я могу установить метку, но я не могу ее обновить после того, как она была установлена. Это мой питон код:Обновление/изменение ярлыков Kivy
class MenuScreen(Screen):
status = StringProperty()
status = 'Text_Status' # This works.
def updatelabel(self,):
# When I call this function, this does not update the label.
self.status='Text_status no.2'
И это мой .kv файл
Label:
id: status
font_size: 12
text: root.status
size_hint: 0.25, 0.05
color: 1,1,1,1
pos_hint: {"x": 0.75, 'y':0.95}
Я пытался выяснить это в течение веков, и я не могу показаться, чтобы получить его.
Использование kivy 1.9.0
Любая помощь будет принята с благодарностью.
Попробуйте изменить 'self.status' на' MenuScreen.status', так как объявление 'status = 'Text_Status' означает, что переменная не является переменной экземпляра. Также попробуйте прочитать некоторые базовые учебники о [oo на python] (http://www.diveintopython.net/object_oriented_framework/index.html) – vyscond
@vyscond Я не знаю - вот как я делаю это свой код и, похоже, работает для меня! Интересно, запутанно ли это, что идентификатор метки совпадает с именем StringProperty. – elParaguayo
MenuScreen.status не имеет никакого значения, никаких ошибок, но никакой разницы. http://i.imgur.com/hXt1d7k.png Это то, что у меня есть до сих пор. Он пытается обновить ярлык, когда я нажимаю кнопку. – AB49K