分享一下自己的小经验,也是第一次用QT读取网页,在此记录一下。话不多说,直接上代码。
web.h
#include <QtWidgets/QMainWindow>
#include "ui_web.h"
#include <QtWebEngineWidgets/QWebEngineView>
#include <QStackedLayout>
#include <QUrl>
class web : public QMainWindow
{
Q_OBJECT
public:
web(QWidget *parent = nullptr);
~web();
public slots:
void on_action_ok_clicked();
private:
Ui::webClass ui;
QWebEngineView* webView; //页面显示对象指针
};
web.cpp
#include "web.h"
web::web(QWidget *parent)
: QMainWindow(parent)
{
ui.setupUi(this);
connect(ui.ok, &QPushButton::clicked, [=]() {on_action_ok_clicked(); });
webView = new QWebEngineView(this);
QVBoxLayout* layout = new QVBoxLayout(ui.web);
layout->addWidget(webView);
}
web::~web()
{}
//打开网站
void web::on_action_ok_clicked()
{
QString urlString = ui.ip_address->text();
QUrl url(urlString);
if (url.isValid()) {
// 加载网址
webView->setUrl(url);
}
}
控件布局
最后的实现效果