Qt-webkitWidgets的使用方法及OpenSSL的解决办法

1)因为QT5.6版本以上,webkitWidgets不在使用,如果使用的版本高于5.6,需要手动安装webkitWidgets,
方法如下:
a) 去 https://github.com/qtwebkit/qtwebkit/releases/tag/qtwebkit-5.212.0-alpha4 下载对应操作系统版本,
我的用时minGW64-Bit,如下图所示:
Qt-webkitWidgets的使用方法及OpenSSL的解决办法_第1张图片
b) 下载后文件解压、拷贝等操作,如下图所示:
Qt-webkitWidgets的使用方法及OpenSSL的解决办法_第2张图片
2)编写相关webkitwidgets相关代码,代码如下:
a)工程文件包含 webkitwidgets 模块;
b)widget.h文件代码如下:

#ifndef WIDGET_H
#define WIDGET_H

#include 
#include 

QT_BEGIN_NAMESPACE
namespace Ui { class Widget; }
QT_END_NAMESPACE

class Widget : public QWidget
{
    Q_OBJECT

public:
    Widget(QWidget *parent = nullptr);
    ~Widget();

private slots:
    void on_pushButton_clicked();

private:
    Ui::Widget *ui;
    QWebView *view;
};
#endif // WIDGET_H

b)widget.cpp文件代码如下:

#include "widget.h"
#include "ui_widget.h"

Widget::Widget(QWidget *parent)
    : QWidget(parent)
    , ui(new Ui::Widget)
{
    ui->setupUi(this);

    view=new QWebView(this);
    ui->verticalLayout->addWidget(view);
    view->show();
}

Widget::~Widget()
{
    delete ui;
    ss
}


void Widget::on_pushButton_clicked()
{
    view->load(QUrl("https://html5test.com"));
    qDebug() << QStringLiteral("OpenSSL支持情况:") << QSslSocket::supportsSsl();
}

c)ui文件如下图所示:
Qt-webkitWidgets的使用方法及OpenSSL的解决办法_第3张图片
上诉代码运行,可能会出现类似 “OpenSSL不支持情况”,需要安装OpenSSL,注意有32bit和64bit之分;
可能会有错误信息:“qt.network.ssl: QSslSocket::connectToHostEncrypted: TLS initialization failed”;
Qt-webkitWidgets的使用方法及OpenSSL的解决办法_第4张图片
Qt-webkitWidgets的使用方法及OpenSSL的解决办法_第5张图片
运行结果如下:
Qt-webkitWidgets的使用方法及OpenSSL的解决办法_第6张图片

你可能感兴趣的:(qt,ui,开发语言)