目录
效果图:基本的浏览器功能
默认网址
输入网址不正确提示:
跳转到特定网站:
后退、刷新等
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();
}