当前位置:  开发笔记 > 编程语言 > 正文

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

如何解决《如何访问qt上的父窗口小部件?》经验,为你挑选了1个好方法。

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

我已经尝试过来自QTreeWidget类的getParent() - > mySlot()但是我已经有了

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

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



1> Michael Bish..:

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

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

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

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

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

推荐阅读
女女的家_747
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有