写在最前面:

我用的QT版本是5.1.1,然后现在教程最多的都是QT4的,那么问题就来了。。。

最坑爹的是,QT帮助文档里查询QWebView的使用,居然给的头文件依然是QT4的,在QT5里面一点也不好用 (/ □ )

成品预览图
3.png

工程目录结构如下:
1.png

需要注意的地方:
Qt5.0开始使用QWebView控件
*.pro 加上
QT+= webkitwidgets
*.cpp 加上如下头文件
#include <QtWebKitWidgets/QWebView>

吐槽一下,帮助手册里居然写的还是 #include <QWebView>
每次编译都是提示找不到 QWebView

我画了一个UI,很粗糙,木办法,人长的也粗糙 o(︶︿︶)o
2.png
设计的UI界面。分为上下2个部分。上部为地址栏,下部为浏览区域。
上部的设计按钮其功能依次为:转到主页、后退、刷新、前进,以及转到URL。
中间的输入栏为URL地址输入栏。是常规浏览器的简易版。


QtWeb.pro完整代码

#-------------------------------------------------
#
# Project created by QtCreator 2014-10-25T15:19:52
#
#-------------------------------------------------

QT       += core gui
QT       += webkitwidgets

greaterThan(QT_MAJOR_VERSION, 4): QT += widgets

TARGET = QtWeb
TEMPLATE = app


SOURCES += main.cpp\
        maindialog.cpp

HEADERS  += maindialog.h

FORMS    += maindialog.ui

RESOURCES += \
    resou

maindialog.cpp 完整代码

#include "maindialog.h"
#include "ui_maindialog.h"
#include <QtWebKitWidgets/QWebView>

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

    this->setWindowTitle("My Browser v1.0 By Bingo");

    ui->HomePage->setStyleSheet("QPushButton{border-image:url(:/images/HomePage.png)}");
    ui->reload->setStyleSheet("QPushButton{border-image:url(:/images/reload.png)}");
    ui->forward->setStyleSheet("QPushButton{border-image:url(:/images/forward.png)}");
    ui->back->setStyleSheet("QPushButton{border-image:url(:/images/back.png)}");

    ui->UrlAdd->setText("http://haobingo.com");
    ui->webView->load(QUrl("http://haobingo.com"));

}

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

void MainDialog::on_go_url_clicked()
{
    QString address = ui->UrlAdd->text();
    ui->webView->load(QUrl(address));
}

void MainDialog::on_HomePage_clicked()
{
    ui->UrlAdd->setText("http://haobingo.com");
    ui->webView->load(QUrl("http://haobingo.com"));
}

void MainDialog::on_reload_clicked()
{
    ui->webView->page()->triggerAction(QWebPage::Reload);
}

void MainDialog::on_back_clicked()
{
    ui->webView->page()->triggerAction(QWebPage::Back);
}

void MainDialog::on_forward_clicked()
{
    ui->webView->page()->triggerAction(QWebPage::Forward);
}

``


完整工程文件下载
<a href="http://static.haobingo.com/QtWeb.zip" target="_blank">QtWeb</a>
</br></br>


  [1]: http://haobingo.com/usr/uploads/2014/10/1462868187.png
  [2]: http://haobingo.com/usr/uploads/2014/10/4189692978.png

标签:qt, 浏览器, qt5

已有 2 条评论

  1. 挖掘机哪家强 挖掘机哪家强

    那么 我的问题来了? 怎么样用AT89c52或c51制作一个智能挖掘机?
    说到挖掘机 那么问题来了 挖掘机到底哪家强???

  2. 你好 你好

    你好

添加新评论