Как получить доступ к свойствам родительской вкладки в Qt?

ХОРОШО. Итак, у меня есть форма, в которой есть виджет вкладок Qt. И у меня есть собственный виджет, в котором у меня есть Qt’s Webkit.

Теперь я хочу изменить текст на родительской вкладке моего пользовательского виджета при изменении веб-сайта.
У меня есть функция для сигнала titleChanged веб-набора, но я не уверен, как получить доступ к его родительской вкладке, чтобы изменить текст этой вкладки.

Я хотел бы получить доступ к родительской вкладке пользовательского виджета, а НЕ к текущей вкладке в виджете вкладок. Таким образом, текст вкладки изменяется, даже если он не выбран.

Я понятия не имею, как это сделать, поэтому я не могу опубликовать код. Пустой сигнальный код titleChanged мне недоступен, поэтому я не могу также опубликовать это.

Благодарю вас.

0

Решение

Поскольку вы хотите изменить родительский элемент пользовательского виджета, при вызове конструктора пользовательского виджета передайте в качестве параметра его родительский элемент и подключите сигнал:

CustomWidget(QWidget * parent) : CustomWidgetBaseClass(parent)
{
connect(this->webkit, SIGNAL(titleChanged(const QString &)), parent, SLOT(setWindowTitle(const QString &));
}

Это также гарантирует освобождение вашего CustomWidget при уничтожении CustomWidgetBaseClass.

Если вам нужно подключить его позже, а не на стройке, вы всегда можете получить родителя, используя parentWidget() const метод и подключите его позже, но всегда устанавливайте родительский объект на конструкцию, то есть, как предполагается использовать Qt

Надеюсь, это поможет!

0

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]