Я работаю над интеграцией некоторых роботов в склад моей работы. Я создал графический интерфейс 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)