好。所以,我有一个表格,其中有Qt的选项卡小工具。而且,我有一个自定义的小部件,其中我有Qt的Webkit。
现在,我想在网站更改时更改自定义小部件的父选项卡中的文本。我已经获得了webkit的title Changed信号的功能,但我不知道如何访问它的父选项卡来更改该选项卡的文本。
我想访问自定义小部件的父选项卡,而不是选项卡小部件中的当前选项卡。这样,即使未选中选项卡,其文本也会发生更改。
我不知道如何做到这一点,这就是为什么我不能发布任何代码。空标题更改的信号代码对我来说不可用,所以我也不能发布。
谢谢。
由于您想修改自定义小部件的父级,因此在调用自定义小部件构造函数时,将其父级作为参数传递并连接信号:
CustomWidget(QWidget * parent) : CustomWidgetBaseClass(parent)
{
connect(this->webkit, SIGNAL(titleChanged(const QString &)), parent, SLOT(setWindowTitle(const QString &));
}
这也保证了当CustomWidgetBaseClass被破坏时,您的CustomWidget被释放。
如果你必须在以后的构建中连接它,你可以总是使用parentWidget() const
方法获得父级,然后再连接它,但总是在构建中设置父级,这就是Qt的使用的方式
希望能有所帮助!