Qt wiki will be updated on October 12th 2023 starting at 11:30 AM (EEST) and the maintenance will last around 2-3 hours. During the maintenance the site will be unavailable.
Open Web Page in QWebView: Difference between revisions
Jump to navigation
Jump to search
(Cleanup) |
(Replaced ''' with * in the code) |
||
(2 intermediate revisions by 2 users not shown) | |||
Line 1: | Line 1: | ||
{{LangSwitch}} | {{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 {{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. | ||
* 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: | ||
Line 57: | Line 56: | ||
public: | public: | ||
explicit MainWindow(QWidget | explicit MainWindow(QWidget *parent = 0); | ||
virtual ~MainWindow(); | virtual ~MainWindow(); | ||
private: | private: | ||
QWebView | QWebView* m_pWebView; | ||
}; | }; | ||
Line 94: | Line 93: | ||
#include <QApplication> | #include <QApplication> | ||
int main(int argc, char | int main(int argc, char *argv[]) | ||
{ | { | ||
QApplication app(argc, argv); | QApplication app(argc, argv); | ||
Line 106: | Line 105: | ||
== Troubleshooting == | == Troubleshooting == | ||
''QWebView: No such file or directory'' | |||
Make sure you have added '''webkit''' to the .pro file of the project. | Make sure you have added '''webkit''' to the .pro file of the project. | ||
Line 112: | Line 111: | ||
<code> | <code> | ||
QT+= webkit | QT+= webkit | ||
</code> | |||
If ''QWebView'' is still not resolved, try adding '''webkitwidgets''' as well. | |||
<code> | |||
QT+= webkit webkitwidgets | |||
</code> | </code> | ||
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