Spec-Zone.ru › Qt 5.14

Класс QWebEngineView

Класс QWebEngineView предоставляет виджет для просмотра и редактирования веб-документов. Подробнее...

Заголовок: #include <QWebEngineView>
qmake: QT += webenginewidgets
С тех пор: Qt 5.4
Наследует: QWidget

Этот класс был представлен в Qt 5.4.

  • Список всех членов, включая наследуемые

Свойства

  • hasSelection : const bool
  • icon : const QIcon
  • iconUrl : const QUrl
  • selectedText : const QString
  • title : const QString
  • url : QUrl
  • zoomFactor : qreal

Открытые функции

QWebEngineView(QWidget *parent = Q_NULLPTR)
virtual ~QWebEngineView()
void findText(const QString &subString, QWebEnginePage::FindFlags options = ..., const QWebEngineCallback<bool> &resultCallback = ...)
bool hasSelection() const
QWebEngineHistory * history() const
QIcon icon() const
QUrl iconUrl() const
void load(const QUrl &url)
void load(const QWebEngineHttpRequest &request)
QWebEnginePage * page() const
QAction * pageAction(QWebEnginePage::WebAction action) const
QString selectedText() const
void setContent(const QByteArray &data, const QString &mimeType = QString(), const QUrl &baseUrl = QUrl())
void setHtml(const QString &html, const QUrl &baseUrl = QUrl())
void setPage(QWebEnginePage *page)
void setUrl(const QUrl &url)
void setZoomFactor(qreal factor)
QWebEngineSettings * settings() const
QString title() const
void triggerPageAction(QWebEnginePage::WebAction action, bool checked = false)
QUrl url() const
qreal zoomFactor() const

Переопределённые открытые функции

virtual QSize sizeHint() const override

Открытые слоты

void назад()
void вперед()
void перезагрузить()
void остановить()

Сигналы

void iconChanged(const QIcon &icon)
void iconUrlChanged(const QUrl &url)
void loadFinished(bool ok)
void loadProgress(int progress)
void loadStarted()
void renderProcessTerminated(QWebEnginePage::RenderProcessTerminationStatus terminationStatus, int exitCode)
void selectionChanged()
void titleChanged(const QString &title)
void urlChanged(const QUrl &url)

Защищенные функции

virtual QWebEngineView * createWindow(QWebEnginePage::WebWindowType type)

Переопределенные защищенные функции

virtual void closeEvent(QCloseEvent *event) override
virtual void contextMenuEvent(QContextMenuEvent *event) override
virtual void dragEnterEvent(QDragEnterEvent *e) override
virtual void dragLeaveEvent(QDragLeaveEvent *e) override
virtual void dragMoveEvent(QDragMoveEvent *e) override
virtual void dropEvent(QDropEvent *e) override
virtual bool event(QEvent *ev) override
virtual void hideEvent(QHideEvent *event) override
virtual void showEvent(QShowEvent *event) override

Подробное описание

Представление веб-страницы является основным виджетом модуля просмотра веб-страниц Qt WebEngine. Его можно использовать в различных приложениях для отображения веб-контента в реальном времени из интернета.

Веб-сайт можно загрузить в представление веб-страницы с помощью функции load(). Для загрузки URL всегда используется метод GET.

Как и все виджеты Qt, функция show() должна быть вызвана для отображения веб-представления. Пример ниже демонстрирует это:

    QWebEngineView *view = new QWebEngineView(parent);
    view->load(QUrl("http://qt-project.org/"));
    view->show();

В качестве альтернативы, можно использовать setUrl() для загрузки веб-сайта. Если у вас есть HTML-контент, вы можете использовать setHtml() вместо этого.

Сигнал loadStarted() генерируется при начале загрузки представления, а сигнал loadProgress() генерируется всякий раз, когда элемент веб-представления завершает загрузку, например, встроенное изображение или скрипт. Сигнал loadFinished() генерируется, когда представление полностью загружено. Его аргумент, либо true , либо false, указывает, была ли загрузка успешной или произошла ошибка.

Функция page() возвращает указатель на объект веб-страницы. QWebEngineView содержит QWebEnginePage, который, в свою очередь, позволяет получить доступ к QWebEngineHistory в контексте страницы.

Заголовок HTML-документа может быть получен с помощью свойства title(). Кроме того, веб-сайт может указать значок, который можно получить, используя свойство icon() или его URL с помощью свойства iconUrl(). Если заголовок или значок изменяются, будут выпущены соответствующие сигналы titleChanged(), iconChanged() и iconUrlChanged(). Свойство zoomFactor() позволяет масштабировать содержимое веб-страницы с помощью коэффициента масштабирования.

Виджет имеет контекстное меню, настроенное на текущий элемент и содержащее действия, полезные в браузере. Для пользовательского контекстного меню или для встраивания действий в меню или панель инструментов доступны отдельные действия через pageAction(). Веб-представление сохраняет состояние возвращенных действий, но позволяет изменять свойства действий, такие как text или icon. Семантика действия также может быть вызвана напрямую через triggerPageAction().

Если вы хотите предоставить поддержку веб-сайтов, которые позволяют пользователю открывать новые окна, такие как всплывающие окна, вы можете создать подкласс QWebEngineView и переопределить функцию createWindow().

См. также Пример простого браузера WebEngine Widgets, Пример манипулирования содержимым WebEngine и Пример Markdown-редактора WebEngine.

Документация свойств

hasSelection : const bool

Это свойство указывает, содержит ли данная страница выделенный контент.

По умолчанию это свойство false.

Функции доступа:

bool hasSelection() const

См. также selectionChanged().

icon : const QIcon

Это свойство содержит значок, связанный с текущей просматриваемой страницей.

По умолчанию это свойство содержит пустой значок.

Это свойство было введено в Qt 5.7.

Функции доступа:

QIcon icon() const

Сигнал уведомления:

void iconChanged(const QIcon &icon)

См. также iconChanged(), iconUrl() и iconUrlChanged().

iconUrl : const QUrl

Это свойство содержит URL-адрес значка, связанного с текущей просматриваемой страницей.

По умолчанию это свойство содержит пустой URL.

Функции доступа:

QUrl iconUrl() const

Сигнал уведомления:

void iconUrlChanged(const QUrl &url)

См. также iconUrlChanged(), icon() и iconChanged().

selectedText : const QString

Это свойство содержит текст, который сейчас выделен.

По умолчанию это свойство содержит пустую строку.

Функции доступа:

QString selectedText() const

См. также findText() и selectionChanged().

title : const QString

Это свойство содержит заголовок страницы, определённый элементом HTML <title>.

Эквивалентно QWebEnginePage::title().

Функции доступа:

QString title() const

См. также titleChanged().

url : QUrl

Это свойство содержит URL-адрес текущей веб-страницы.

Установка этого свойства очищает представление и загружает URL-адрес.

По умолчанию это свойство содержит пустой, недействительный URL.

Функции доступа:

QUrl url() const
void setUrl(const QUrl &url)

См. также load() и urlChanged().

zoomFactor : qreal

Это свойство содержит коэффициент масштабирования для представления.

Допустимые значения находятся в диапазоне от 0.25 до 5.0. Значение по умолчанию равно 1.0.

Функции доступа:

qreal zoomFactor() const
void setZoomFactor(qreal factor)

Документация функций-членов

QWebEngineView::QWebEngineView(QWidget *parent = Q_NULLPTR)

Создаёт пустое веб-представление с родителем parent.

См. также load().

[slot] void QWebEngineView::back()

Удобный слот, который загружает предыдущий документ в списке документов, созданных при навигации по ссылкам. Не делает ничего, если нет предыдущего документа.

Эквивалентно:

    view->page()->triggerAction(QWebEnginePage::Back);

См. также forward() и pageAction().

[slot] void QWebEngineView::forward()

Удобный слот, который загружает следующий документ в списке документов, созданных при навигации по ссылкам. Не делает ничего, если нет следующего документа.

Эквивалентно:

    view->page()->triggerAction(QWebEnginePage::Forward);

См. также back() и pageAction().

[signal] void QWebEngineView::iconChanged(const QIcon &icon)

Этот сигнал генерируется, когда значок ("favicon") связанный с представлением, меняется. Новый значок задаётся параметром icon.

Эта функция была добавлена в Qt 5.7.

Примечание: Сигнал уведомления для свойства icon.

См. также icon(), iconUrl() и iconUrlChanged().

[signal] void QWebEngineView::iconUrlChanged(const QUrl &url)

Этот сигнал генерируется, когда URL значка ("favicon") связанный с представлением, меняется. Новый URL задаётся параметром url.

Примечание: Сигнал уведомления для свойства iconUrl.

См. также iconUrl(), icon() и iconChanged().

[signal] void QWebEngineView::loadFinished(bool ok)

Этот сигнал генерируется, когда загрузка страницы завершена. Параметр ok укажет, была ли загрузка успешной или произошла ошибка.

См. также loadStarted().

[signal] void QWebEngineView::loadProgress(int progress)

Этот сигнал испускается каждый раз, когда элемент в представлении веб-страницы завершает загрузку, например, встроенное изображение или скрипт. Таким образом, он отслеживает общий прогресс загрузки веб-представления.

Текущее значение предоставляется параметром progress и изменяется от 0 до 100, что является стандартным диапазоном для QProgressBar.

См. также loadStarted() и loadFinished().

[signal] void QWebEngineView::loadStarted()

Этот сигнал испускается при начале новой загрузки страницы.

См. также loadProgress() и loadFinished().

[slot] void QWebEngineView::reload()

Перезагружает текущий документ.

См. также stop(), pageAction() и loadStarted().

[signal] void QWebEngineView::renderProcessTerminated(QWebEnginePage::RenderProcessTerminationStatus terminationStatus, int exitCode)

Этот сигнал испускается, когда процесс отрисовки завершается с ненулевым кодом выхода. terminationStatus — это код завершения процесса, а exitCode — код состояния, с которым завершился процесс.

Эта функция была добавлена в Qt 5.6.

[signal] void QWebEngineView::selectionChanged()

Этот сигнал испускается каждый раз, когда изменяется выделение.

Примечание: При выделении текста мышкой (левым кликом и перетаскиванием) сигнал будет испускаться для каждого нового выбранного символа, а не при отпускании левой кнопки мыши.

См. также selectedText().

[slot] void QWebEngineView::stop()

Удобный слот, который останавливает загрузку документа.

Он эквивалентен:

    view->page()->triggerAction(QWebEnginePage::Stop);

См. также reload(), pageAction() и loadFinished().

[signal] void QWebEngineView::titleChanged(const QString &title)

Этот сигнал испускается всякий раз, когда меняется заголовок представления.

См. также title().

[signal] void QWebEngineView::urlChanged(const QUrl &url)

Этот сигнал испускается при изменении URL представления.

См. также url() и load().

[virtual] QWebEngineView::~QWebEngineView()

Удаляет представление веб-страницы.

[override virtual protected] void QWebEngineView::closeEvent(QCloseEvent *event)

Переопределяет: QWidget::closeEvent(QCloseEvent *event).

[override virtual protected] void QWebEngineView::contextMenuEvent(QContextMenuEvent *event)

Переопределяет: QWidget::contextMenuEvent(QContextMenuEvent *event).

[virtual protected] QWebEngineView *QWebEngineView::createWindow(QWebEnginePage::WebWindowType type)

Эта функция вызывается из метода createWindow() связанной страницы QWebEnginePage каждый раз, когда страница хочет создать новое окно заданного типа type. Например, когда в JavaScript выдается запрос на открытие документа в новом окне.

Примечание: Если метод createWindow() связанной страницы переопределен, этот метод не вызывается, если явно не указано в переопределении.

См. также QWebEnginePage::createWindow().

[override virtual protected] void QWebEngineView::dragEnterEvent(QDragEnterEvent *e)

Переопределяет: QWidget::dragEnterEvent(QDragEnterEvent *event).

[override virtual protected] void QWebEngineView::dragLeaveEvent(QDragLeaveEvent *e)

Переопределяет: QWidget::dragLeaveEvent(QDragLeaveEvent *event).

[override virtual protected] void QWebEngineView::dragMoveEvent(QDragMoveEvent *e)

Переопределяет: QWidget::dragMoveEvent(QDragMoveEvent *event).

[override virtual protected] void QWebEngineView::dropEvent(QDropEvent *e)

Переопределяет: QWidget::dropEvent(QDropEvent *event).

[override virtual protected] bool QWebEngineView::event(QEvent *ev)

Переопределяет: QWidget::event(QEvent *event).

void QWebEngineView::findText(const QString &subString, QWebEnginePage::FindFlags options = ..., const QWebEngineCallback<bool> &resultCallback = ...)

Ищет указанную строку subString на странице, используя заданные options.

Для очистки выделения просто передайте пустую строку.

resultCallback должна принимать булевый параметр. Она будет вызвана со значением true , если subString найдена; в противном случае значение обратного вызова будет false.

Предупреждение: Мы гарантируем, что обратный вызов (resultCallback) всегда будет вызван, но это может произойти во время уничтожения страницы. Когда QWebEnginePage удаляется, обратный вызов срабатывает с некорректным значением, и использовать соответствующий экземпляр QWebEnginePage или QWebEngineView внутри него небезопасно.

См. также selectedText() и selectionChanged().

[override virtual protected] void QWebEngineView::hideEvent(QHideEvent *event)

Переопределяет: QWidget::hideEvent(QHideEvent *event).

QWebEngineHistory *QWebEngineView::history() const

Возвращает указатель на историю просмотренных веб-страниц представления.

Эквивалентно:

    view->page()->history();

void QWebEngineView::load(const QUrl &url)

Загружает указанный url и отображает его.

Примечание: Представление остается прежним до тех пор, пока не поступят данные для отображения нового URL.

См. также load(), setUrl(), url(), urlChanged() и QUrl::fromUserInput().

void QWebEngineView::load(const QWebEngineHttpRequest &request)

Выполняет указанный request и загружает ответ.

Эта функция была добавлена в Qt 5.9.

См. также load(), setUrl(), url(), urlChanged() и QUrl::fromUserInput().

QWebEnginePage *QWebEngineView::page() const

Возвращает указатель на базовую веб-страницу.

См. также setPage().

QAction *QWebEngineView::pageAction(QWebEnginePage::WebAction action) const

Возвращает указатель на QAction, который описывает указанное веб-действие action.

void QWebEngineView::setContent(const QByteArray &data, const QString &mimeType = QString(), const QUrl &baseUrl = QUrl())

Устанавливает содержимое веб-представления в data. Если аргумент mimeType пустой, считается, что содержимое — text/plain,charset=US-ASCII.

Внешние объекты, на которые ссылается содержимое, находятся относительно baseUrl. Для загрузки внешних объектов baseUrl не может быть пустой.

Данные загружаются немедленно; внешние объекты загружаются асинхронно.

См. также load(), setHtml() и QWebEnginePage::toHtml().

void QWebEngineView::setHtml(const QString &html, const QUrl &baseUrl = QUrl())

Устанавливает содержимое веб-представления заданным содержимым html.

Внешние объекты, такие как таблицы стилей или изображения, на которые ссылается HTML-документ, находятся относительно baseUrl. Для загрузки внешних объектов baseUrl не может быть пустой. Например, если html получен из http://www.example.com/documents/overview.html, которое является базовым URL-адресом, то изображение, на которое ссылается относительный URL diagram.png, должно находиться по адресу http://www.example.com/documents/diagram.png.

HTML-документ загружается немедленно, а внешние объекты загружаются асинхронно.

При использовании этого метода Qt WebEngine предполагает, что внешние ресурсы, такие как JavaScript-программы или таблицы стилей, закодированы в UTF-8, если не указано иное. Например, кодировку внешнего скрипта можно указать через атрибут charset тега HTML-скрипта. В качестве альтернативы кодировка может быть указана веб-сервером.

Это функция-обёртка, эквивалентная setContent(html, "text/html;charset=UTF-8", baseUrl).

Предупреждение: Эта функция работает только для HTML. Для других типов MIME (таких как XHTML или SVG) вместо неё следует использовать setContent().

Примечание: Содержимое размером более 2 МБ не может быть отображено, потому что setHtml() преобразует предоставленный HTML в кодировку процентов и помещает data: перед ним, чтобы создать URL-адрес, к которому он переходит. Таким образом, предоставленный код становится URL-адресом, превышающим ограничение в 2 МБ, установленное Chromium. Если содержимое слишком большое, сигнал loadFinished() срабатывает с success=false.

См. также load(), setContent(), QWebEnginePage::toHtml(), и QWebEnginePage::setContent().

void QWebEngineView::setPage(QWebEnginePage *page)

Устанавливает page в качестве новой страницы веб-представления.

Родительский QObject предоставленной страницы остаётся владельцем объекта. Если текущая страница является дочерним объектом веб-представления, она будет удалена.

См. также page().

QWebEngineSettings *QWebEngineView::settings() const

Возвращает указатель на объект настроек, специфичный для представления или страницы.

Эквивалентно:

    view->page()->settings();

См. также QWebEngineSettings::defaultSettings().

[override virtual protected] void QWebEngineView::showEvent(QShowEvent *event)

Переопределяет: QWidget::showEvent(QShowEvent *event).

[override virtual] QSize QWebEngineView::sizeHint() const

Переопределяет функцию доступа к свойству: QWidget::sizeHint.

void QWebEngineView::triggerPageAction(QWebEnginePage::WebAction action, bool checked = false)

Вызывает указанное действие action. Если это действие можно выбирать, предполагается указанное состояние checked.

Следующий пример вызывает действие копирования и, следовательно, копирует любой выделенный текст в буфер обмена.

    view->triggerPageAction(QWebEnginePage::Copy);

См. также pageAction().

© The Qt Company Ltd
Licensed under the GNU Free Documentation License, Version 1.3.
https://doc.qt.io/qt-5.14/qwebengineview.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API