4

我正在填充 QTreeWidget 的一个分支,然后将分支父级上的扩展属性设置为 true。itemExpanded 信号作为响应触发,这不是我想要的。在一段代码期间是否有一种临时的方法来抑制或吸收信号?

4

1 回答 1

8

您可以使用 QObject::blockSignals 设置信号阻塞。
http://doc.qt.nokia.com/stable/qobject.html#blockSignals

bool QObject::blockSignals ( bool block )
如果 block 为真,则该对象发出的信号被阻塞(即,发出信号不会调用任何与其连接的东西)。如果 block 为 false,则不会发生这样的阻塞。返回值是 signalsBlocked() 的前一个值。请注意,即使该对象的信号已被阻止,也会发出 destroy() 信号。另请参见信号阻塞()。

于 2011-09-06T16:47:45.107 回答