Open Web Page in QWebView: Difference between revisions
Jump to navigation
Jump to search
No edit summary |
(Replaced ''' with * in the code) |
||
(8 intermediate revisions by 5 users not shown) | |||
Line 1: | Line 1: | ||
{{LangSwitch}} | |||
[[Category: | [[Category:Developing with Qt::QtWebKit]] | ||
[[Category:HowTo]] | [[Category:HowTo]] | ||
[[Category:Snippets]] | [[Category:Snippets::Misc]] | ||
[[Category:Tutorial]] | [[Category:Tutorial]] | ||
The following tutorial shows how to load a web page using {{DocLink|QUrl}} in {{DocLink|QWebView}}. QWebView is a widget provided by [http://doc.qt.io/qt-5/qtwebkit-index.html WebKit in Qt] that is used to view and edit web documents. | |||
The following tutorial shows how to load a web page using | |||
* Specify that you want to link against the QtWebkit module by adding this line to your qmake .pro file: | * Specify that you want to link against the QtWebkit module by adding this line to your qmake .pro file: | ||
<code> | <code> | ||
QT | QT += webkit | ||
</code> | </code> | ||
Line 42: | Line 35: | ||
</code> | </code> | ||
== Example == | |||
This example has been built with Qt SDK 1.1 and tested on Symbian^3 devices. | This example has been built with Qt SDK 1.1 and tested on Symbian^3 devices. | ||
=== mainwindow.h === | |||
<code> | <code> | ||
#ifndef MAINWINDOW_H | #ifndef MAINWINDOW_H | ||
#define MAINWINDOW_H | #define MAINWINDOW_H | ||
#include < | #include <QMainWindow> | ||
#include <QWebView> | #include <QWebView> | ||
#include <QUrl> | #include <QUrl> | ||
Line 65: | Line 56: | ||
public: | public: | ||
explicit MainWindow(QWidget | explicit MainWindow(QWidget *parent = 0); | ||
virtual ~MainWindow(); | virtual ~MainWindow(); | ||
private: | private: | ||
QWebView | QWebView* m_pWebView; | ||
}; | }; | ||
Line 76: | Line 67: | ||
</code> | </code> | ||
=== mainwindow.cpp === | |||
<code> | <code> | ||
#include "mainwindow.h" | #include "mainwindow.h" | ||
#include < | #include <QCoreApplication> | ||
MainWindow::MainWindow(QWidget *parent) | MainWindow::MainWindow(QWidget *parent) | ||
Line 94: | Line 84: | ||
MainWindow::~MainWindow() | MainWindow::~MainWindow() | ||
{ | { | ||
} | } | ||
</code> | </code> | ||
=== main.cpp === | |||
<code> | <code> | ||
#include "mainwindow.h" | #include "mainwindow.h" | ||
#include < | #include <QApplication> | ||
int main(int argc, char | int main(int argc, char *argv[]) | ||
{ | { | ||
QApplication app(argc, argv); | QApplication app(argc, argv); | ||
Line 116: | Line 104: | ||
</code> | </code> | ||
== Troubleshooting == | |||
''QWebView: No such file or directory'' | |||
''' ''' | Make sure you have added '''webkit''' to the .pro file of the project. | ||
<code> | |||
QT+= webkit | |||
</code> | |||
If ''QWebView'' is still not resolved, try adding '''webkitwidgets''' as well. | |||
<code> | <code> | ||
QT | QT+= webkit webkitwidgets | ||
</code> | </code> | ||
= See also = | = See also = | ||
[[Embed YouTube Video in QWebView]] |
Latest revision as of 19:48, 29 December 2017
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