#ifndef WIDGET_H
#define WIDGET_H
#include <QtGui/QWidget>
#include <QUrl>
#include <QWebView>
class Widget : public QWidget
{
Q_OBJECT
public:
Widget(QWidget *parent = 0);
~Widget();
private:
QWebView *view;
private slots:
void slotOpenUrl(const QUrl&);
};
#endif // WIDGET_H
#include "widget.h"
#include <QtGui/QWidget>
#include <QtWebKit/QtWebKit>
#include <QtGui/QHBoxLayout>
#include <QDebug>
Widget::Widget(QWidget *parent)
: QWidget(parent)
{
setWindowFlags(Qt::Sheet);
QWebSettings::globalSettings()->setAttribute(QWebSettings::JavascriptEnabled,true);
QWebSettings::globalSettings()->setAttribute(QWebSettings::PluginsEnabled,true);
view = new QWebView(this);
view->load(QUrl("
http://www.baidu.com"));
view->page()->setLinkDelegationPolicy(QWebPage::DelegateAllLinks);
connect(view,SIGNAL(linkClicked(QUrl)),this,SLOT(slotOpenUrl(QUrl)));
QHBoxLayout *layout =new QHBoxLayout(this);
layout->addWidget(view);
setLayout(layout);
setMinimumSize(1024,600);
setMaximumSize(1024,768);
}
Widget::~Widget()
{
}
void Widget::slotOpenUrl(const QUrl &url)
{
view->load(url);
qDebug()<<"test";
}
#include <QtGui/QApplication>
#include "widget.h"
#include <QtCore/QTextCodec>int main(int argc, char *argv[])
{
QApplication a(argc, argv);
QTextCodec *codec = QTextCodec::codecForName("system");
QTextCodec::setCodecForLocale(codec);
QTextCodec::setCodecForCStrings(codec);
QTextCodec::setCodecForTr(codec);
Widget w;
w.show();
return a.exec();
}