当前位置: 代码迷 >> QT开发 >> Qt父类的信号无法在子类中触发吗,该如何解决
  详细解决方案

Qt父类的信号无法在子类中触发吗,该如何解决

热度:700   发布时间:2016-04-25 02:53:19.0
Qt父类的信号无法在子类中触发吗
用QTableWidget的cellEntered(int,int)会触发槽函数,自己写了一个类TableWidget继承QTableWidget,它的cellEntered(int,int)却无法触发槽函数。
Qt父类的信号无法在子类中触发吗,为什么呢?怎样才能触发这个信号
------解决思路----------------------
信号是可以继承的,触发没问题。仔细查下你的代码。
------解决思路----------------------
既然是继承,那就什么东西都继承了,包括信号和槽函数
------解决思路----------------------
无代码只能乱猜了,你的错误有一下几个可能:你自己添加的类有Q_OBJECT宏吗?当然这个缺少应该不影响你父类的信号。
2、具体的连接函数的使用正确吗?比如:信号和槽的参数匹配问题,比如:对象指针问题。
------解决思路----------------------
引用:
Quote: 引用:

我想问下你的信号是在哪个类里面emit的?
我的类继承与qt自带的QTableWidget,都已经封装好了,信号肯定是在它内部emit的,不过具体在哪里我不知道,也并不需要知道

我其实想说的是你的connect应该没问题,你说信号没触发槽函数,我是在想也有可能不是信号没触发函数,而是发送信号的语句根本没被调用。也就是说你外部做的事并不能让cellEntered这个信号发送。 还有你槽函数所在的执行线程有没有死循环的其他函数在执行?
  相关解决方案