如何处理子类中的信号?假设我的子类派生自QTextEdit
,并且对信号textChanged
感兴趣。将对象连接到自身似乎很愚蠢,我应该能够简单地覆盖textChange
方法 - 但它不是virtual
。
可以接受的方式是什么?
答案 0 :(得分:11)
您无法实现/覆盖信号,因此唯一的方法是创建一个新插槽并将其连接到textChanged():
connect( this, SIGNAL(textChanged(QString)), this, SLOT(slotTextChanged(QString)) );
答案 1 :(得分:2)
也许这看起来很愚蠢,但这就是我做的方式:将我的派生类连接到父类发出的信号。
但是如果还有其他解决方案,我很感兴趣!
答案 2 :(得分:1)
将信号连接到同一类中的插槽是完全可以的。
因此,请实施您的广告位并将其连接到textChanged(QString)