Qt开发——QWebEngineView浏览器开发

目录

效果图:基本的浏览器功能

默认网址

 输入网址不正确提示:

 跳转到特定网站:

后退、刷新等

widget.h

widget.cpp


效果图:基本的浏览器功能

默认网址

 输入网址不正确提示:

 跳转到特定网站:

后退、刷新等

widget.h

#ifndef WIDGET_H
#define WIDGET_H

#include <QWidget>
#include <QWebEngineView>
#include <QMessageBox>

namespace Ui {
class Widget;
}

class Widget : public QWidget
{
    Q_OBJECT

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

private slots:
    void on_GoBtn_clicked();

    void on_RefreshBtn_clicked();

    void on_backBtn_clicked();

private:
    Ui::Widget *ui;
    QString url;//输入的url
    QWebEngineView *view;

};

#endif // WIDGET_H

widget.cpp

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

Widget::Widget(QWidget *parent) :
    QWidget(parent),
    ui(new Ui::Widget)
{
    ui->setupUi(this);
    setWindowTitle(QStringLiteral("Qt浏览器"));
    setWindowIcon(QIcon("icon.png"));
    ui->GoBtn->setIcon(QIcon("go.png"));
    ui->RefreshBtn->setIcon(QIcon("refresh.png"));
    ui->backBtn->setIcon(QIcon("back.png"));
    view = new QWebEngineView;
    view->load(QUrl("https://www.baidu.com/"));//默认先打开百度
    ui->horizontalLayout_2->addWidget(view);
    view->show();

}

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

//“转到”按键
void Widget::on_GoBtn_clicked()
{
    url = ui->lineEdit->text();
    if(url.isEmpty()){
        QMessageBox::warning(this,QStringLiteral("错误"),QStringLiteral("输入网址不能为空!"));
    }else{
        view->load(url);
        view->show();
    }
}

//刷新键
void Widget::on_RefreshBtn_clicked()
{
    view->reload();
}

//后退键
void Widget::on_backBtn_clicked()
{
    view->back();
}
发布了287 篇原创文章 · 获赞 297 · 访问量 12万+

猜你喜欢

转载自blog.csdn.net/qq_41895747/article/details/104225043