Захватить свойства динамически добавленной кнопки Kivy - PullRequest
0 голосов
/ 04 ноября 2019

У меня есть приложение, созданное на Python и Kivy, которое имеет экран, к которому когда-то обращались, динамически создает некоторые кнопки. Я хотел бы знать, как захватить текст кнопки, на которую нажали.

Python:

def on_enter(self):
    lista_series =[1,2,3,4,5,6,7,8]
    for i in lista_series:
        self.ids.grid.add_widget(Button(text=str(i)))

При нажатии любой кнопки я бы хотел, чтобы текст нажатой кнопки возвращался.

1 Ответ

1 голос
/ 04 ноября 2019

Вы должны установить функцию через on_press, которая будет отправлять нажатый экземпляр (кнопку) в качестве параметра:

def on_enter(self):
    lista_series =[1,2,3,4,5,6,7,8]
    for i in lista_series:
        button = Button(text=str(i), on_press=self.foo)
        self.ids.grid.add_widget(button)

def foo(self, instance):
    print(instance.text)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...