Кнопка Kivy теряет визуальную индикацию нажатия при добавлении в функциональность - PullRequest
0 голосов
/ 04 ноября 2019

Я работаю над интеграцией некоторых роботов в склад моей работы. Я создал графический интерфейс Kivy для управления этими роботами. Обычно, когда вы нажимаете кнопку в Kivy, форма кнопки изменяется с прямоугольной на прямоугольник с закругленными углами, и цвет кнопки изменяется. Этот ответ сохраняется, если я добавляю простые функции, такие как печать слов при нажатии. Однако, когда я добавляю код для управления роботами, он теряет эту визуальную индикацию. Кнопка работает - когда она нажата, она выполняет правильную функцию, но внешний вид кнопки не изменяется, чтобы показать, что она была нажата.

Я не знаю, сколько кода я могу предоставить, поскольку она является проприетарной. Я использую API компании-разработчика и SDK для создания этого графического интерфейса.

Я пытался создавать кнопки как с использованием файла .kv, так и без него. Я пробовал вручную добавлять изменения цвета при нажатии кнопки - не повезло. Я также попытался внести изменения прозрачности и текста. По сути, я не могу получить никаких визуальных изменений, когда кнопка нажимается, когда она вызывает эту функцию.

из моего файла .kv (извините, форматирование получилось странным):

< Button >:
    font_size: 30
    color: 1,1,1,1
    size_hint: 0.15,0.1
< FloatLayout >:
    Button:
        text: "Clear Error"
        font_size: 20
        pos_hint: {"x":0.85, "top":0.1}
        background_normal: ''
        background_color: .2,.8,.2,1
        on_press: app.ClearError()

из моего .py файла:

def ClearError(self):
    robot_name1 = "robot name"
    print("CLEAR ERROR")
    robot = Robot.load(robot_name1, client=client)
    if robot.error_status is not None:
        print("Error status!")
        robot.error_status = None 
        robot.save(client=client)
...