Spec-Zone.ru › Qt 5.13

Класс 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 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)

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

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

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

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

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

Этот сигнал генерируется при изменении URL-адреса значка («иконки») отображения. Новый 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::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::globalSettings().

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

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

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

Переопределяет: QWidget::sizeHint() const.

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.13/qwebengineview.html

Spec-Zone.ru

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