Где искать параметр, который был только что возвращен сигналом?

1

QTabWidget имеет сигнал currentChanged(). И он возвращает индекс текущей вкладки.
Но как я могу получить этот параметр в таком выражении:

tabs.currentChanged.connect(lambda: foo());

def foo(index):
    ...

Где искать этот параметр, который только что вернулся?

Теги:
qt
pyqt

1 ответ

3
Лучший ответ

Сигналы ничего не возвращают. Они могут иметь параметры, хотя это и имеет место для currentIndex. Если вы хотите, чтобы этот аргумент передавался вашей функции, вы должны попробовать:

tabs.currentChanged.connect(lambda index: foo(index));
  • 0
    Это работает, спасибо. Почему вы говорите, что он не возвращается? Сигнал возвращает параметр (emit, pass, send) в слот. Кто еще, если не сигнал, сделал это?
  • 2
    Сигнал может передавать / излучать / отправлять значения в слот. Это не возвращает значения к нему. Это просто словарь / терминология.
Показать ещё 2 комментария

Ещё вопросы

Сообщество Overcoder
Наверх
Меню