Qt5.5.1之後的版本沒有QWebView了。當然,如果使用之前的版本的話它的bug會讓你感到絕望。所以我們需要使用Qt推薦QWebengineView,他只支持msvc,不支持mingw,所以不能在Linux/Mac osx中使用。建議使用Qt5.9.1或以上版本,據說5.9之前會有中文輸入法的bug的。
我這裏以Qt5.9.1爲例,首先下載Qt5.9.1,下載地址http://download.qt.io/official_releases/qt/5.9/
然後下載vs2015,選擇簡體中文版即可,下載地址https://www.ithome.com/html/win10/164028.htm
首先安裝vs2015,根據個人需求安裝即可。
然後安裝Qt5.9.1,勾選上msvc2015 32bit,Win10用戶勾選上UWP,其它按需求即可
安裝完成,打開Qt5.9.1/Tools/QtCreator/bin/qtcreator.exe。
新建工程---在pro文件中添加webenginewidgets模塊
QT += core gui webenginewidgets
greaterThan(QT_MAJOR_VERSION, 4): QT += widgets
TARGET = QWebEngineTest
TEMPLATE = app
DEFINES += QT_DEPRECATED_WARNINGS
SOURCES += \
main.cpp \
mainwindow.cpp
HEADERS += \
mainwindow.h
FORMS += \
mainwindow.ui
mainwindow.h
private:
QWebEngineView * view;
在ui文件中添加布局,在mainwindow.cpp添加代碼
view = new QWebEngineView(this);
view->load(QUrl("http://www.baidu.com"));
ui->verticalLayout->addWidget(view);
成功訪問到百度首頁。但是這時候是訪問不到https的鏈接的,需要添加ssleay32.dll和libeay32.dll。
這兩個dll可以在網上下載,也可以自己安裝OpenSSL-Win32獲得。
將這兩個dll拷貝到D:\Qt\Qt5.9.1\5.9.1\msvc2015\bin即可。
完美的解決了之前在WebView訪問https://stackoverflow.com/questions/25850803/qwebview-always-fails-to-load-website崩潰的問題