Как я могу передать переменную в функцию к которой применен valueChanged?

Мне нужно передать переменную в функцию. Я пробовал это сделать через lambda, но почему-то функция не видит переменную val.

    menuAnimation = QtCore.QVariantAnimation()
    menuAnimation.valueChanged.connect(lambda val=1: self.resizeMenu(val))

def resizeMenu(self,value,val=''):
    print(val)

Как это исправить?


Ответы (1 шт):

Автор решения: S. Nick

Попробуйте так:

    menuAnimation = QtCore.QVariantAnimation()
    # menuAnimation.valueChanged.connect(lambda val=1: self.resizeMenu(val))
    menuAnimation.valueChanged.connect(lambda value, val=1: self.resizeMenu(value, val))

def resizeMenu(self, value, val=''):
    print(val)
→ Ссылка