我有以下Qt Web视图:
QWebView *view = new QWebView();
view->load(QUrl("http://example.com"));
加载完成后,我想获取文档的标题,并使用它来设置主窗口标题。
我想从中view->loadFinished()
返回true
是否已加载页面。
为了设置窗口标题,我使用webView->setWindowTitle(newTitle)
。因此,我需要该newTitle
变量作为文档标题。
我怎样才能做到这一点?
QWebView::loadFinished
是一个信号。您可以订阅它来知道页面何时加载:
connect(view, SIGNAL(loadFinished(bool)), this, SLOT(onLoaded()));
要访问HTML标题,您可以使用QWebView::title
属性。
void onLoaded()
{
window->setWindowTitle(view->title());
}
而不是使用loadFinished
它,更合适的是使用signaltitleChanged(const QString& title)
将新标题应用于窗口:
connect(view, SIGNAL(titleChanged(QString)), this, SLOT(setWindowTitle(QString)));
编辑:
示例:
QWebView* webView = new QWebView();
connect(webView, SIGNAL(titleChanged(QString)), webView, SLOT(setWindowTitle(QString)));
webView->load(QUrl("http://yahoo.com"));
webView->show();
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句