Jump to content

Open Web Page in QWebView

From Qt Wiki
Revision as of 12:01, 28 November 2016 by EdwardWelbourne (talk | contribs) (Sub-categorize)

En Ar Bg De El Es Fa Fi Fr Hi Hu It Ja Kn Ko Ms Nl Pl Pt Ru Sq Th Tr Uk Zh

The following tutorial shows how to load a web page using QUrl in QWebView. QWebView is a widget provided by WebKit in Qt that is used to view and edit web documents.

  • Specify that you want to link against the QtWebkit module by adding this line to your qmake .pro file:
QT += webkit
  • Include required headers
#include <QWebView>
#include <QUrl>
  • Create instance of QWebView
m_pWebView = new QWebView(this);
//set position and size
m_pWebView->setGeometry(0,0,200,200);

Additionally QWebView style can be customized using setStyleSheet().

  • Load a web page
m_pWebView->load(QUrl("http://www.example.com"));

Example

This example has been built with Qt SDK 1.1 and tested on Symbian^3 devices.

mainwindow.h

#ifndef MAINWINDOW_H
#define MAINWINDOW_H

#include <QMainWindow>
#include <QWebView>
#include <QUrl>

namespace Ui {
 class MainWindow;
}

class MainWindow : public QMainWindow
{
 Q_OBJECT
public:

 explicit MainWindow(QWidget '''parent = 0);
 virtual ~MainWindow();

private:

 QWebView''' m_pWebView;
};

#endif // MAINWINDOW_H

mainwindow.cpp

#include "mainwindow.h"

#include <QCoreApplication>

MainWindow::MainWindow(QWidget *parent)
 : QMainWindow(parent)
{
 m_pWebView = new QWebView(this);
 //set position and size
 m_pWebView->setGeometry(0,0,200,200);
 m_pWebView->load(QUrl("http://www.example.com"));
}

MainWindow::~MainWindow()
{
}

main.cpp

#include "mainwindow.h"

#include <QApplication>

int main(int argc, char '''argv[])
{
 QApplication app(argc, argv);

 MainWindow mainWindow;
 mainWindow.showMaximized();
 return app.exec();
}

Troubleshooting

QWebView: No such file or directory

Make sure you have added webkit to the .pro file of the project.

QT+= webkit

If QWebView is still not resolved, try adding webkitwidgets as well.

QT+= webkit webkitwidgets

See also

Embed YouTube Video in QWebView