Български English

Отваряне на Web страница в QWebView

Даденото ръководство показва как се зарежда интернет страница чрез QUrl [doc.qt.nokia.com] в QWebView [doc.qt.nokia.com]. QWebView е клас, предоставен от WebKit в Qt [doc.qt.nokia.com], който се използва за показване и редакция на web документи.

  • Добавете webkit в .pro файла на проекта

  1. QT += webkit

  • Включете нужните хедъри

  1. #include <QWebView>
  2. #include <QUrl>

  • Създайте инстанция на QWebView

  1. m_pWebView = new QWebView(this);
  2. //set position and size
  3. m_pWebView->setGeometry(0,0,200,200);

Допълинетлно може да промените стила на QWebView чрез setStyleSheet().

  • Заредете web страница

  1. m_pWebView->load(QUrl("http://www.example.com"));

Example

Предоставеният пример е създаден чрез Qt SDK 1.1 и тестван на Symbian^3 устройство.

mainwindow.h

  1. #ifndef MAINWINDOW_H
  2. #define MAINWINDOW_H
  3.  
  4. #include <QtGui/QMainWindow>
  5. #include <QWebView>
  6. #include <QUrl>
  7.  
  8. namespace Ui {
  9.     class MainWindow;
  10. }
  11.  
  12. class MainWindow : public QMainWindow
  13. {
  14.     Q_OBJECT
  15. public:
  16.  
  17.     explicit MainWindow(QWidget *parent = 0);
  18.     virtual ~MainWindow();
  19.  
  20. private:
  21.  
  22.     QWebView* m_pWebView;
  23. };
  24.  
  25. #endif // MAINWINDOW_H

mainwindow.cpp

  1. #include "mainwindow.h"
  2.  
  3. #include <QtCore/QCoreApplication>
  4.  
  5. MainWindow::MainWindow(QWidget *parent)
  6.     : QMainWindow(parent)
  7. {
  8.     m_pWebView = new QWebView(this);
  9.     //set position and size
  10.     m_pWebView->setGeometry(0,0,200,200);
  11.     m_pWebView->load(QUrl("http://www.example.com"));
  12. }
  13.  
  14. MainWindow::~MainWindow()
  15. {
  16.  
  17. }

main.cpp

  1. #include "mainwindow.h"
  2.  
  3. #include <QtGui/QApplication>
  4.  
  5. int main(int argc, char *argv[])
  6. {
  7.     QApplication app(argc, argv);
  8.  
  9.     MainWindow mainWindow;
  10.     mainWindow.showMaximized();
  11.     return app.exec();
  12. }

Отстраняване на проблеми

  • QWebView: No such file or directory

Уверете се, че сте добавили webkit в .pro файла на проекта.

  1. QT += webkit

Вижте още

Embed YouTube Video in QWebView [developer.qt.nokia.com]
Extending QtWebKit [developer.qt.nokia.com]

Categories:

  • HowTo
  • snippets
  •