加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > Linux > 正文

c – 如何访问qt上的父窗口小部件?

发布时间:2020-12-13 19:05:47 所属栏目:Linux 来源:网络整理
导读:我有一个继承的QTreeWidget(称为PackList)类,其父级是KXmlGuiWindow. 如何访问父母的插槽? 我已经尝试过QTreeWidget类的getParent() > mySlot()但我已经有了 error: no matching function for call to 'PackList::mySlot()' 有人知道正确的方法吗?谢谢 最

我有一个继承的QTreeWidget(称为PackList)类,其父级是KXmlGuiWindow.
如何访问父母的插槽?

我已经尝试过QTreeWidget类的getParent() – > mySlot()但我已经有了

error: no matching function for call to 'PackList::mySlot()'

有人知道正确的方法吗?谢谢

最佳答案
如果您知道父类,则必须将parentWidget()强制转换为该类,然后调用您的插槽.请记住,在这种情况下,它是否与插槽没有区别.你只是在调用一种方法.

((KXmlGuiWindow*)parentWidget())->mySlot();

您可以通过将信号连接到插槽来进行无需转换的呼叫.

connect( this,SIGNAL(mySignal()),parentWidget(),SLOT(mySlot()) );

最后,如果您不想使用它,可以使用QMetaObject::invokeMethod来调用它.这可能是矫枉过正的.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读