Подавить событие PyQt временно? - PullRequest
3 голосов
/ 06 сентября 2011

Я заполняю ветку QTreeWidget и затем устанавливаю расширенный атрибут в родительском элементе ветви в trueВ ответ срабатывает сигнал itemExpanded, а это не то, что я хочу.Есть ли временный способ подавления или поглощения сигналов во время сегмента кода?

1 Ответ

7 голосов
/ 06 сентября 2011

Вы можете установить блокировку сигналов, используя QObject :: blockSignals.
http://doc.qt.nokia.com/stable/qobject.html#blockSignals

bool QObject :: blockSignals (bool block)
Если блок равен true, сигналы, испускаемые этим объектом, блокируются (то есть, испускание сигнала не вызовет ничего, связанного с ним). Если блок ложен, такая блокировка не произойдет. Возвращаемое значение - это предыдущее значение signalBlocked (). Обратите внимание, что сигнал destroy () будет испускаться, даже если сигналы для этого объекта были заблокированы. См. Также signalBlocked ().

...