Qt與網頁交互開發提供QWebKit和QWebEngine,但Qt5.6之後就不再支持QWebKit, 轉而應用谷歌內核支持的QWebEngine,提升性能.
開發準備: Qt需要安裝QWebEngine模塊
引入模塊: QT += webenginewidgets
實現: 新建一個Widget
QHBoxLayout* l_layout = new QHBoxLayout();
l_layout->setMargin(0);
m_webView = new QWebEngineView();
m_webView->page()->load(QUrl("http://www.baidu.com"));
l_layout->addWidget(m_webView);
this->setLayout(l_layout);
最基礎的嵌入網頁模塊已完成.
QWebEngineView加載html網頁的方式:
1.絕對路徑加載
m_webView->page()->load(QUrl("file:///home/xxx/Project/GlobalMonitor/test.html"));
需要注意 "file:///"不能丟,支持右建Reload,適合前期調試
2.Resources方式加載
m_webView->page()->load(QUrl("qrc:/res/test.html"));
test.html需要加到Resources資源裏 ,右鍵Relaod無效
-----------------------------------------------------------------------------------------
後續會介紹QWebEngineView與Web的交互,利用QWebChannel與html交互,Qt與ECharts的使用,和打包的問題
效果圖: