Класс QWebEnginePage
Класс QWebEnginePage предоставляет объект для просмотра и редактирования веб-документов. Подробнее...
| Заголовок: | #include <QWebEnginePage> |
| qmake: | QT += webenginewidgets |
| С момента: | Qt 5.4 |
| Наследует: | QObject |
Этот класс был представлен в Qt 5.4.
Общие типы
| Перечисление | Feature { Уведомления, Геолокация, Запись аудио, Запись видео, ..., Запись звука и видео рабочего стола } |
| Перечисление | FileSelectionMode { Открытие файла, Открытие нескольких файлов } |
| Перечисление | FindFlag { Назад, С учетом регистра } |
| Флаги | FindFlags |
| Перечисление | JavaScriptConsoleMessageLevel { Уровень информации, Уровень предупреждения, Уровень ошибки } |
| Перечисление | NavigationType { Переход по ссылке, Ввод адреса, Отправка формы, Назад/Вперед, Перезагрузка, Другое } |
| Перечисление | PermissionPolicy { Неизвестно, Разрешено пользователем, Запрещено пользователем } |
| Перечисление | RenderProcessTerminationStatus { Нормальное завершение, Аномальное завершение, Ошибка, Прервано } |
| Перечисление | WebAction { Нет действия, Назад, Вперед, Остановить, ..., Вставка неупорядоченного списка } |
| Перечисление | WebWindowType { Окно браузера, Вкладка браузера, Диалоговое окно, Фоновая вкладка браузера } |
Свойства
|
|
Открытые функции
| QWebEnginePage(QWebEngineProfile *profile, QObject *parent = Q_NULLPTR) | |
| QWebEnginePage(QObject *parent = Q_NULLPTR) | |
| virtual | ~QWebEnginePage() |
| QAction * | action(QWebEnginePage::WebAction action) const |
| QColor | backgroundColor() const |
| QSizeF | contentsSize() const |
| const QWebEngineContextMenuData & | contextMenuData() const |
| QMenu * | createStandardContextMenu() |
| QWebEnginePage * | devToolsPage() const |
| void | download(const QUrl &url, const QString &filename = QString()) |
| void | findText(const QString &subString, QWebEnginePage::FindFlags options = ..., const QWebEngineCallback<bool> &resultCallback = ...) |
| bool | hasSelection() const |
| QWebEngineHistory * | history() const |
| QIcon | icon() const |
| QUrl | iconUrl() const |
| QWebEnginePage * | inspectedPage() const |
| bool | isAudioMuted() const |
| void | load(const QUrl &url) |
| void | load(const QWebEngineHttpRequest &request) |
| void | print(QPrinter *printer, const QWebEngineCallback<bool> &resultCallback) |
| void | printToPdf(const QString &filePath, const QPageLayout &pageLayout = QPageLayout(QPageSize(QPageSize::A4), QPageLayout::Portrait, QMarginsF())) |
| void | printToPdf(const QWebEngineCallback<const QByteArray &> &resultCallback, const QPageLayout &pageLayout = QPageLayout(QPageSize(QPageSize::A4), QPageLayout::Portrait, QMarginsF())) |
| QWebEngineProfile * | profile() const |
| bool | recentlyAudible() const |
| void | replaceMisspelledWord(const QString &replacement) |
| QUrl | requestedUrl() const |
| void | runJavaScript(const QString &scriptSource) |
| void | runJavaScript(const QString &scriptSource, quint32 worldId) |
| void | runJavaScript(const QString &scriptSource, const QWebEngineCallback<const QVariant &> &resultCallback) |
| void | runJavaScript(const QString &scriptSource, quint32 worldId, const QWebEngineCallback<const QVariant &> &resultCallback) |
| void | save(const QString &filePath, QWebEngineDownloadItem::SavePageFormat format = QWebEngineDownloadItem::MimeHtmlSaveFormat) const |
| QWebEngineScriptCollection & | scripts() |
| QPointF | scrollPosition() const |
| QString | selectedText() const |
| void | setAudioMuted(bool muted) |
| void | setBackgroundColor(const QColor &color) |
| void | setContent(const QByteArray &data, const QString &mimeType = QString(), const QUrl &baseUrl = QUrl()) |
| void | setDevToolsPage(QWebEnginePage *devToolsPage) |
| void | setFeaturePermission(const QUrl &securityOrigin, QWebEnginePage::Feature feature, QWebEnginePage::PermissionPolicy policy) |
| void | setHtml(const QString &html, const QUrl &baseUrl = QUrl()) |
| void | setInspectedPage(QWebEnginePage *page) |
| void | setUrl(const QUrl &url) |
| void | setUrlRequestInterceptor(QWebEngineUrlRequestInterceptor *interceptor) |
| void | setView(QWidget *view) |
| void | setWebChannel(QWebChannel *channel, uint worldId) |
| void | setWebChannel(QWebChannel *channel) |
| void | setZoomFactor(qreal factor) |
| QWebEngineSettings * | settings() const |
| QString | title() const |
| void | toHtml(const QWebEngineCallback<const QString &> &resultCallback) const |
| void | toPlainText(const QWebEngineCallback<const QString &> &resultCallback) const |
| virtual void | triggerAction(QWebEnginePage::WebAction action, bool checked = ...) |
| QUrl | url() const |
| QWidget * | view() const |
| QWebChannel * | webChannel() const |
| qreal | zoomFactor() const |
Реализованные публичные функции
| virtual bool | event(QEvent *e) override |
Сигналы
| void | audioMutedChanged(bool muted) |
| void | authenticationRequired(const QUrl &requestUrl, QAuthenticator *authenticator) |
| void | contentsSizeChanged(const QSizeF &size) |
| void | featurePermissionRequestCanceled(const QUrl &securityOrigin, QWebEnginePage::Feature feature) |
| void | featurePermissionRequested(const QUrl &securityOrigin, QWebEnginePage::Feature feature) |
| void | fullScreenRequested(QWebEngineFullScreenRequest fullScreenRequest) |
| void | geometryChangeRequested(const QRect &geom) |
| void | iconChanged(const QIcon &icon) |
| void | iconUrlChanged(const QUrl &url) |
| void | linkHovered(const QString &url) |
| void | loadFinished(bool ok) |
| void | loadProgress(int progress) |
| void | loadStarted() |
| void | pdfPrintingFinished(const QString &filePath, bool success) |
| void | printRequested() |
| void | proxyAuthenticationRequired(const QUrl &requestUrl, QAuthenticator *authenticator, const QString &proxyHost) |
| void | quotaRequested(QWebEngineQuotaRequest quotaRequest) |
| void | recentlyAudibleChanged(bool recentlyAudible) |
| void | registerProtocolHandlerRequested(QWebEngineRegisterProtocolHandlerRequest request) |
| void | renderProcessTerminated(QWebEnginePage::RenderProcessTerminationStatus terminationStatus, int exitCode) |
| void | scrollPositionChanged(const QPointF &position) |
| void | selectClientCertificate(QWebEngineClientCertificateSelection clientCertificateSelection) |
| void | selectionChanged() |
| void | titleChanged(const QString &title) |
| void | urlChanged(const QUrl &url) |
| void | windowCloseRequested() |
Защищенные функции
| virtual bool | acceptNavigationRequest(const QUrl &url, QWebEnginePage::NavigationType type, bool isMainFrame) |
| virtual bool | certificateError(const QWebEngineCertificateError &certificateError) |
| virtual QStringList | chooseFiles(QWebEnginePage::FileSelectionMode mode, const QStringList &oldFiles, const QStringList &acceptedMimeTypes) |
| virtual QWebEnginePage * | createWindow(QWebEnginePage::WebWindowType type) |
| virtual void | javaScriptAlert(const QUrl &securityOrigin, const QString &msg) |
| virtual bool | javaScriptConfirm(const QUrl &securityOrigin, const QString &msg) |
| virtual void | javaScriptConsoleMessage(QWebEnginePage::JavaScriptConsoleMessageLevel level, const QString &message, int lineNumber, const QString &sourceID) |
| virtual bool | javaScriptPrompt(const QUrl &securityOrigin, const QString &msg, const QString &defaultValue, QString *result) |
Подробное описание
Страница веб-движка содержит содержимое HTML-документа, историю посещенных ссылок и действия.
QWebEnginePage API очень похож на QWebEngineView, так как вы по-прежнему получаете такие общие функции, как action() (известная как pageAction() в QWebEngineView), triggerAction() и findText().
Страница может быть загружена с помощью load() или setUrl(). В качестве альтернативы, если у вас есть HTML-содержимое, вы можете использовать setHtml(). Метод GET всегда используется для загрузки URL-адресов.
Класс QWebEnginePage также предлагает методы для получения как текущего URL-адреса, загруженного на странице (см. url()), так и URL-адреса, первоначально запрошенного для загрузки (см. requestedUrl()). Эти методы позволяют получить URL-адрес до и после разрешения DNS или перенаправления во время процесса загрузки. requestedUrl() также соответствует URL-адресу, добавленному в историю страницы (QWebEngineHistory), если загрузка прошла успешно.
Заголовок HTML-страницы можно получить с помощью свойства title(). Кроме того, страница может также указать значок, который можно получить с помощью свойства icon() или его URL-адреса с помощью свойства iconUrl(). Если заголовок или значок изменяются, будут отправлены соответствующие сигналы titleChanged(), iconChanged() и iconUrlChanged(). Свойство zoomFactor() позволяет изменять масштаб содержимого веб-страницы.
Сигнал loadStarted() отправляется при начале загрузки страницы, а сигнал loadProgress() отправляется всякий раз, когда элемент веб-страницы завершает загрузку, например, вставленный образ или скрипт. Сигнал loadFinished() отправляется, когда содержимое страницы загружено полностью, независимо от выполнения скрипта или отображения страницы. Его аргумент, либо true , либо false, указывает, была ли операция загрузки успешной.
Документ HTML загружается в главную область внутри веб-страницы. Если он ссылается на вложенные области (как определено элементами <frame> или <iframe>), они считаются частью контента. Вложенные области доступны индивидуально только через JavaScript.
Веб-сайты определяют безопасный источник для безопасного доступа друг к другу к ресурсам для клиентской стороны сценариев или баз данных. Источник состоит из имени хоста, схемы и номера порта. Например, сайты http://www.example.com/my/page.html и http://www.example.com/my/overview.html могут совместно использовать одну базу данных или получать доступ друг к другу к документам, когда используются в наборах HTML-фреймов и JavaScript. В то же время, http://www.malicious.com/evil.html не может получить доступ к ресурсам http://www.example.com/, потому что они имеют разные безопасные источники. По умолчанию локальные схемы, такие как file:// и qrc://, считаются в одном безопасном источнике и могут получать доступ к ресурсам друг друга. Локальные ресурсы по умолчанию ограничены в доступе к удаленному контенту, что означает, что file:// не сможет получить доступ к http://domain.com/foo.html.
Сценарии могут выполняться на веб-странице с использованием runJavaScript(), либо в основной JavaScript-среде вместе с остальным JavaScript, поступающим из содержимого веб-страницы, либо в собственной изолированной среде. Хотя к DOM страницы можно получить доступ из любой среды, переменные JavaScript функции, определенной в одной среде, недоступны из другой. QWebEngineScript::ScriptWorldId предоставляет некоторые предопределенные идентификаторы для этой цели. Использование версии runJavaScript() без идентификатора среды равносильно запуску сценария в MainWorld.
Настройка FocusOnNavigationEnabled может использоваться для того, чтобы представление, связанное со страницей, автоматически получало фокус при выполнении операции навигации (например, при загрузке или перезагрузке страницы или при навигации по истории).
Документация по типам членов
enum QWebEnginePage::Feature
Этот перечисление описывает категории доступа к платформным функциям, доступ к которым пользователь может быть запрошен предоставить или запретить:
| Постоянная | Значение | Описание |
|---|---|---|
QWebEnginePage::Notifications |
0 |
Веб-уведомления для конечного пользователя. |
QWebEnginePage::Geolocation |
1 |
Аппаратное или сервисное обеспечение местоположения. |
QWebEnginePage::MediaAudioCapture |
2 |
Устройства захвата аудио, такие как микрофоны. |
QWebEnginePage::MediaVideoCapture |
3 |
Видеоустройства, такие как камеры. |
QWebEnginePage::MediaAudioVideoCapture |
4 |
Устройства захвата аудио и видео. |
QWebEnginePage::MouseLock |
5 |
Блокировка мыши, которая блокирует указатель мыши в веб-представлении и обычно используется в играх. |
QWebEnginePage::DesktopVideoCapture |
6 |
Захват вывода видео, то есть захват экрана пользователя, например, для совместного использования экрана. (Добавлено в Qt 5.10) |
QWebEnginePage::DesktopAudioVideoCapture |
7 |
Захват аудио и видео вывода. (Добавлено в Qt 5.10) |
См. также featurePermissionRequested(), featurePermissionRequestCanceled(), setFeaturePermission() и PermissionPolicy.
enum QWebEnginePage::FileSelectionMode
Это перечисление указывает, должно ли возвращать функция chooseFiles() только один файл или может возвращать несколько файлов:
| Постоянная | Значение | Описание |
|---|---|---|
QWebEnginePage::FileSelectOpen |
0 |
Возвращает только одно имя файла. |
QWebEnginePage::FileSelectOpenMultiple |
1 |
Возвращает несколько имён файлов. |
См. также chooseFiles().
enum QWebEnginePage::FindFlagflags QWebEnginePage::FindFlags
Это перечисление описывает параметры, доступные для функции findText(). Параметры могут быть объединены с помощью оператора OR из следующего списка:
| Постоянная | Значение | Описание |
|---|---|---|
QWebEnginePage::FindBackward |
1 |
Ищет в обратном направлении вместо прямого. |
QWebEnginePage::FindCaseSensitively |
2 |
По умолчанию findText() работает без учета регистра. Указание этого параметра изменяет поведение на поиск с учетом регистра. |
Тип FindFlags является типом-синонимом для QFlags<FindFlag>. Он хранит объединение значений FindFlag с помощью оператора OR.
enum QWebEnginePage::JavaScriptConsoleMessageLevel
Это перечисление описывает различные уровни серьезности сообщения консоли JavaScript:
| Постоянная | Значение | Описание |
|---|---|---|
QWebEnginePage::InfoMessageLevel |
0 |
Сообщение является чисто информативным и может быть безопасно проигнорировано. |
QWebEnginePage::WarningMessageLevel |
1 |
Сообщение информирует о неожиданном поведении или ошибках, которые могут потребовать внимания. |
QWebEnginePage::ErrorMessageLevel |
2 |
Сообщение указывает на ошибку. |
enum QWebEnginePage::NavigationType
Это перечисление описывает тип запроса навигации:
| Постоянная | Значение | Описание |
|---|---|---|
QWebEnginePage::NavigationTypeLinkClicked |
0 |
Запрос навигации был вызван нажатием на ссылку. |
QWebEnginePage::NavigationTypeTyped |
1 |
Запрос навигации был вызван явно загруженным URL-адресом. |
QWebEnginePage::NavigationTypeFormSubmitted |
2 |
Запрос навигации был вызван отправкой формы. |
QWebEnginePage::NavigationTypeBackForward |
3 |
Запрос навигации был вызван действиями «Назад» или «Вперед». |
QWebEnginePage::NavigationTypeReload |
4 |
Запрос навигации был вызван действием перезагрузки. |
QWebEnginePage::NavigationTypeOther |
5 |
Запрос навигации был вызван другими средствами, не покрытыми вышеперечисленными. |
См. также acceptNavigationRequest().
enum QWebEnginePage::PermissionPolicy
Это перечисление описывает политики разрешения, которые пользователь может установить для доступа к данным или устройствам:
| Постоянная | Значение | Описание |
|---|---|---|
QWebEnginePage::PermissionUnknown |
0 |
Неизвестно, предоставляет ли пользователь разрешение или запрещает. |
QWebEnginePage::PermissionGrantedByUser |
1 |
Пользователь предоставил разрешение. |
QWebEnginePage::PermissionDeniedByUser |
2 |
Пользователь отказал в разрешении. |
См. также featurePermissionRequested(), featurePermissionRequestCanceled(), setFeaturePermission() и Feature.
enum QWebEnginePage::RenderProcessTerminationStatus
Это перечисление описывает состояние, при котором завершился процесс отрисовки:
| Постоянная | Значение | Описание |
|---|---|---|
QWebEnginePage::NormalTerminationStatus |
0 |
Процесс отрисовки завершился нормально. |
QWebEnginePage::AbnormalTerminationStatus |
1 |
Процесс отрисовки завершился с ненулевым выходным статусом. |
QWebEnginePage::CrashedTerminationStatus |
2 |
Процесс отрисовки потерпел крах, например, из-за ошибки сегментации. |
QWebEnginePage::KilledTerminationStatus |
3 |
Процесс отрисовки был завершен, например, с помощью SIGKILL или диспетчера задач. |
Это перечисление было введено или изменено в Qt 5.6.
END_OF_DOCUMENT_MARKERenum QWebEnginePage::WebAction
Этот перечисление описывает типы действий, которые могут быть выполнены на веб-странице.
Действия имеют эффект только тогда, когда они применимы.
Доступность действий можно определить, проверив isEnabled() на действии, возвращаемом action().
| Константа | Значение | Описание |
|---|---|---|
QWebEnginePage::NoWebAction |
- 1 |
Действие не выполняется. |
QWebEnginePage::Back |
0 |
Переход назад в истории навигации по ссылкам. |
QWebEnginePage::Forward |
1 |
Переход вперед в истории навигации по ссылкам. |
QWebEnginePage::Stop |
2 |
Остановка загрузки текущей страницы. |
QWebEnginePage::Reload |
3 |
Перезагрузка текущей страницы. |
QWebEnginePage::ReloadAndBypassCache |
10 |
Перезагрузка текущей страницы без использования локального кэша. |
QWebEnginePage::Cut |
4 |
Вырезать выделенный контент в буфер обмена. |
QWebEnginePage::Copy |
5 |
Скопировать выделенный контент в буфер обмена. |
QWebEnginePage::Paste |
6 |
Вставить контент из буфера обмена. |
QWebEnginePage::Undo |
7 |
Отменить последнее действие редактирования. |
QWebEnginePage::Redo |
8 |
Повторить последнее действие редактирования. |
QWebEnginePage::SelectAll |
9 |
Выделить весь контент. Это действие доступно только при фокусе на содержимом страницы. Фокус можно принудительно установить с помощью вызова JavaScript window.focus(), или включить настройку FocusOnNavigationEnabled для автоматического получения фокуса. |
QWebEnginePage::PasteAndMatchStyle |
11 |
Вставить контент из буфера обмена с текущим стилем. |
QWebEnginePage::OpenLinkInThisWindow |
12 |
Открыть текущую ссылку в текущем окне. (Добавлена в Qt 5.6) |
QWebEnginePage::OpenLinkInNewWindow |
13 |
Открыть текущую ссылку в новом окне. Требуется реализация createWindow(). (Добавлена в Qt 5.6) |
QWebEnginePage::OpenLinkInNewTab |
14 |
Открыть текущую ссылку в новой вкладке. Требуется реализация createWindow(). (Добавлена в Qt 5.6) |
QWebEnginePage::OpenLinkInNewBackgroundTab |
31 |
Открыть текущую ссылку в новой фоновой вкладке. Требуется реализация createWindow(). (Добавлена в Qt 5.7) |
QWebEnginePage::CopyLinkToClipboard |
15 |
Скопировать текущую ссылку в буфер обмена. (Добавлена в Qt 5.6) |
QWebEnginePage::CopyImageToClipboard |
17 |
Скопировать нажатый образ в буфер обмена. (Добавлена в Qt 5.6) |
QWebEnginePage::CopyImageUrlToClipboard |
18 |
Скопировать URL нажатого изображения в буфер обмена. (Добавлена в Qt 5.6) |
QWebEnginePage::CopyMediaUrlToClipboard |
20 |
Скопировать URL наведённого аудио или видео в буфер обмена. (Добавлена в Qt 5.6) |
QWebEnginePage::ToggleMediaControls |
21 |
Переключает отображение элементов управления наведённого аудио или видео элемента. (Добавлена в Qt 5.6) |
QWebEnginePage::ToggleMediaLoop |
22 |
Переключает циклическое воспроизведение наведённого аудио или видео элемента при завершении. (Добавлена в Qt 5.6) |
QWebEnginePage::ToggleMediaPlayPause |
23 |
Переключает состояние воспроизведения/паузы наведённого аудио или видео элемента. (Добавлена в Qt 5.6) |
QWebEnginePage::ToggleMediaMute |
24 |
Выключение/включение звука наведённого аудио или видео элемента. (Добавлена в Qt 5.6) |
QWebEnginePage::DownloadLinkToDisk |
16 |
Загрузка текущей ссылки на диск. Требуется слот для downloadRequested(). (Добавлена в Qt 5.6) |
QWebEnginePage::DownloadImageToDisk |
19 |
Загрузка выделенного изображения на диск. Требуется слот для downloadRequested(). (Добавлена в Qt 5.6) |
QWebEnginePage::DownloadMediaToDisk |
25 |
Загрузка наведённого аудио или видео на диск. Требуется слот для downloadRequested(). (Добавлена в Qt 5.6) |
QWebEnginePage::InspectElement |
26 |
Запуск любого подключенного Web Inspector для проверки выделенного элемента. (Добавлена в Qt 5.6) |
QWebEnginePage::ExitFullScreen |
27 |
Выход из полноэкранного режима. (Добавлена в Qt 5.6) |
QWebEnginePage::RequestClose |
28 |
Запрос на закрытие веб-страницы. Если определён, вызывается обработчик window.onbeforeunload, и пользователь может подтвердить или отклонить закрытие страницы. Если запрос на закрытие подтвержден, генерируется событие windowCloseRequested. (Добавлена в Qt 5.6) |
QWebEnginePage::Unselect |
29 |
Очистить текущий выбор. (Добавлена в Qt 5.7) |
QWebEnginePage::SavePage |
30 |
Сохранить текущую страницу на диск. По умолчанию используется формат MHTML для сохранения веб-страницы на диске. Требуется слот для downloadRequested(). (Добавлена в Qt 5.7) |
QWebEnginePage::ViewSource |
32 |
Показать исходный код текущей страницы в новой вкладке. Требуется реализация createWindow(). (Добавлена в Qt 5.8) |
QWebEnginePage::ToggleBold |
33 |
Переключает полужирный шрифт для выделения или в позиции курсора. Требуется contenteditable="true". (Добавлена в Qt 5.10) |
QWebEnginePage::ToggleItalic |
34 |
Переключает курсив для выделения или в позиции курсора. Требуется contenteditable="true". (Добавлена в Qt 5.10) |
QWebEnginePage::ToggleUnderline |
35 |
Переключает подчеркивание для выделения или в позиции курсора. Требуется contenteditable="true". (Добавлена в Qt 5.10) |
QWebEnginePage::ToggleStrikethrough |
36 |
Переключает зачёркивание для выделения или в позиции курсора. Требуется contenteditable="true". (Добавлена в Qt 5.10) |
QWebEnginePage::AlignLeft |
37 |
Выравнивает строки, содержащие выделение или курсор, по левому краю. Требуется contenteditable="true". (Добавлена в Qt 5.10) |
QWebEnginePage::AlignCenter |
38 |
Выравнивает строки, содержащие выделение или курсор, по центру. Требуется contenteditable="true". (Добавлена в Qt 5.10) |
QWebEnginePage::AlignRight |
39 |
Выравнивает строки, содержащие выделение или курсор, по правому краю. Требуется contenteditable="true". (Добавлена в Qt 5.10) |
QWebEnginePage::AlignJustified |
40 |
Растягивает строки, содержащие выделение или курсор, чтобы каждая строка имела одинаковую ширину. Требуется contenteditable="true". (Добавлена в Qt 5.10) |
QWebEnginePage::Indent |
41 |
Отступы строк, содержащих выделение или курсор. Требуется contenteditable="true". (Добавлена в Qt 5.10) |
QWebEnginePage::Outdent |
42 |
Уменьшение отступов строк, содержащих выделение или курсор. Требуется contenteditable="true". (Добавлена в Qt 5.10) |
QWebEnginePage::InsertOrderedList |
43 |
Вставляет упорядоченный список в текущую позицию курсора, удаляя текущее выделение. Требуется contenteditable="true". (Добавлена в Qt 5.10) |
QWebEnginePage::InsertUnorderedList |
44 |
Вставляет неупорядоченный список в текущую позицию курсора, удаляя текущее выделение. Требуется contenteditable="true". (Добавлена в Qt 5.10) |
перечисление QWebEnginePage::WebWindowType
Это перечисление описывает типы окон, которые могут быть созданы функцией createWindow():
| Константа | Значение | Описание |
|---|---|---|
QWebEnginePage::WebBrowserWindow |
0 |
Полное окно веб-браузера. |
QWebEnginePage::WebBrowserTab |
1 |
Вкладка веб-браузера. |
QWebEnginePage::WebDialog |
2 |
Окно без декораций. |
QWebEnginePage::WebBrowserBackgroundTab |
3 |
Вкладка веб-браузера без скрытия текущего видимого WebEngineView. (Добавлена в Qt 5.7) |
Документация свойств
audioMuted : bool
Это свойство содержит значение, указывающее, заглушен ли звук текущей страницы.
Значение по умолчанию — false.
Это свойство было добавлено в Qt 5.7.
Функции доступа:
| bool | isAudioMuted() const |
| void | setAudioMuted(bool muted) |
Сигнал уведомления:
| void | audioMutedChanged(bool muted) |
См. также recentlyAudible.
backgroundColor : QColor
Это свойство содержит цвет фона страницы за телом документа.
Вы можете установить цвет фона на Qt::transparent или на полупрозрачный цвет, чтобы видеть сквозь документ, или вы можете установить его, чтобы соответствовать вашему веб-контенту в гибридном приложении, чтобы предотвратить вспышки белого цвета, которые могут появляться во время загрузки.
Значение по умолчанию — белый.
Это свойство было добавлено в Qt 5.6.
Функции доступа:
| QColor | backgroundColor() const |
| void | setBackgroundColor(const QColor &color) |
contentsSize : const QSizeF
Это свойство содержит размер содержимого страницы.
Это свойство было добавлено в Qt 5.7.
Функции доступа:
| QSizeF | contentsSize() const |
Сигнал уведомления:
| void | contentsSizeChanged(const QSizeF &size) |
hasSelection : const bool
Это свойство содержит значение, указывающее, содержит ли эта страница выделенный контент.
Функции доступа:
| bool | hasSelection() const |
См. также selectionChanged().
icon : const QIcon
Это свойство содержит значок, связанный с текущей отображаемой страницей.
По умолчанию это свойство содержит пустой значок. Если веб-страница указывает более одного значка, свойство icon содержит доступные значки-кандидаты в одном масштабируемом 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().
recentlyAudible : const bool
Это свойство содержит текущее состояние воспроизведения звука, то есть воспроизводился ли звук недавно.
Значение по умолчанию — false.
Это свойство было добавлено в Qt 5.7.
Функции доступа:
| bool | recentlyAudible() const |
Сигнал уведомления:
| void | recentlyAudibleChanged(bool recentlyAudible) |
См. также audioMuted.
requestedUrl : const QUrl
Это свойство содержит URL-адрес, который изначально был запрошен для загрузки текущей страницы.
Примечание: URL-адрес может отличаться от URL-адреса, возвращаемого url(), который является фактическим URL-адресом, полученным в результате разрешения DNS или перенаправления.
Функции доступа:
| QUrl | requestedUrl() const |
scrollPosition : const QPointF
Это свойство содержит позицию прокрутки содержимого страницы.
Это свойство было добавлено в Qt 5.7.
Функции доступа:
| QPointF | scrollPosition() const |
Сигнал уведомления:
| void | scrollPositionChanged(const QPointF &position) |
selectedText : const QString
Это свойство содержит текущий выделенный текст.
По умолчанию это свойство содержит пустую строку.
Функции доступа:
| QString | selectedText() const |
См. также selectionChanged().
title : const QString
Это свойство содержит заголовок страницы, определённый элементом HTML <title>.
Если на странице нет элемента <title>, используется URL-адрес. Для file:// URL-адресов используется только имя файла, а не весь путь.
По умолчанию, до загрузки любого содержимого, это свойство содержит пустую строку.
Функции доступа:
| QString | title() const |
См. также titleChanged().
url : QUrl
Это свойство содержит URL-адрес текущей страницы.
Установка этого свойства очищает представление и загружает URL-адрес.
По умолчанию это свойство содержит пустой, недопустимый URL.
Функции доступа:
| QUrl | url() const |
| void | setUrl(const QUrl &url) |
См. также urlChanged().
zoomFactor : qreal
Это свойство содержит коэффициент масштабирования для содержимого страницы.
Допустимые значения находятся в диапазоне от 0.25 до 5.0. Значение по умолчанию — 1.0.
Функции доступа:
| qreal | zoomFactor() const |
| void | setZoomFactor(qreal factor) |
Документация функций-членов
void QWebEnginePage::runJavaScript(const QString &scriptSource, quint32 worldId, const QWebEngineCallback<const QVariant &> &resultCallback)
void QWebEnginePage::runJavaScript(const QString &scriptSource, quint32 worldId)
void QWebEnginePage::runJavaScript(const QString &scriptSource)
void QWebEnginePage::runJavaScript(const QString &scriptSource, const QWebEngineCallback<const QVariant &> &resultCallback)
Выполняет JavaScript-код, содержащийся в scriptSource, в мире, указанном worldId. Значения идентификаторов мира совпадают со значениями, предоставленными QWebEngineScript::ScriptWorldId, и находятся в диапазоне от 0 до 256. Использование версий runJavaScript() без идентификатора мира равносильно выполнению скрипта в MainWorld.
После выполнения скрипта, resultCallback вызывается с результатом последнего выполненного оператора. resultCallback может быть указателем на функцию, функтором или лямбда-выражением, и ожидается, что он примет параметр типа QVariant. Например:
page.runJavaScript("document.title", [](const QVariant &v) { qDebug() << v.toString(); }); В качестве результата из JavaScript может быть возвращено только «простое значение данных». Поддерживаемые типы данных включают все типы данных JSON, а также, например, Date и ArrayBuffer. Неподдерживаемые типы данных включают, например, Function и Promise.
Предупреждение: Не выполняйте длительные вычисления в функции обратного вызова, так как это может заблокировать рендеринг страницы веб-движка.
Предупреждение: Гарантируется, что обратный вызов (resultCallback) всегда будет вызван, но это может произойти во время уничтожения страницы. При удалении QWebEnginePage обратный вызов вызывается с недействительным значением, и использование соответствующего экземпляра QWebEnginePage или QWebEngineView внутри него небезопасно.
См. scripts() для альтернативного API вставки скриптов.
Данная документация была добавлена в Qt 5.7.
См. такжеQWebEngineScript::ScriptWorldId.
QWebEnginePage::QWebEnginePage(QWebEngineProfile *profile, QObject *parent = Q_NULLPTR)
Создаёт пустую страницу веб-движка в профиле веб-движка profile с указанным родителем parent.
Если профиль не является стандартным, вызывающий должен гарантировать, что профиль остаётся живым до тех пор, пока страница существует.
Данная функция была добавлена в Qt 5.5.
QWebEnginePage::QWebEnginePage(QObject *parent = Q_NULLPTR)
Создаёт пустую страницу QWebEnginePage с указанным родителем parent.
[signal] void QWebEnginePage::audioMutedChanged(bool muted)
Этот сигнал генерируется при изменении состояния muted страницы.
Примечание: Не следует путать с отключением звука конкретного элемента HTML5 audio или video.
Данная функция была добавлена в Qt 5.7.
Примечание: Сигнал уведомления для свойства audioMuted.
[signal] void QWebEnginePage::authenticationRequired(const QUrl &requestUrl, QAuthenticator *authenticator)
Этот сигнал генерируется, когда доступ к requestUrl требует аутентификации. authenticator должен использоваться для передачи имени пользователя и пароля для подключения.
[signal] void QWebEnginePage::featurePermissionRequestCanceled(const QUrl &securityOrigin, QWebEnginePage::Feature feature)
Этот сигнал генерируется, когда веб-сайт, идентифицированный по securityOrigin, отменяет ранее выданную заявку на использование feature.
См. также featurePermissionRequested() и setFeaturePermission().
[signal] void QWebEnginePage::featurePermissionRequested(const QUrl &securityOrigin, QWebEnginePage::Feature feature)
Этот сигнал генерируется, когда веб-сайт, идентифицированный по securityOrigin, запрашивает использование ресурса или устройства, идентифицированного по feature.
См. также featurePermissionRequestCanceled() и setFeaturePermission().
[signal] void QWebEnginePage::fullScreenRequested(QWebEngineFullScreenRequest fullScreenRequest)
Этот сигнал генерируется, когда веб-страница запрашивает переход в полноэкранный режим для веб-элемента, обычно для видеоэлемента.
Объект запроса fullScreenRequest может использоваться для принятия или отклонения запроса.
Если запрос принят, элемент, запрашивающий полноэкранный режим, заполнит область просмотра. Однако приложение должно перевести представление в полноэкранный режим или переместить страницу в полноэкранное представление.
См. также QWebEngineSettings::FullScreenSupportEnabled.
[signal] void QWebEnginePage::geometryChangeRequested(const QRect &geom)
Этот сигнал генерируется всякий раз, когда документ хочет изменить положение и размер страницы на geom. Это может произойти, например, через JavaScript.
Примечание: setGeometry() ожидает размер без учета декорации окна, в то время как geom включает её. Для правильной обработки этого сигнала необходимо вычесть размер полей рамки из geom.
window->setGeometry(geom.marginsRemoved(window->frameMargins()));
[signal] void QWebEnginePage::iconChanged(const QIcon &icon)
Этот сигнал генерируется при изменении значка («иконки закладки») страницы. Новый значок задаётся параметром icon.
Данная функция была добавлена в Qt 5.7.
Примечание: Сигнал уведомления для свойства icon.
См. также icon(), iconUrl() и iconUrlChanged().
[signal] void QWebEnginePage::iconUrlChanged(const QUrl &url)
Этот сигнал генерируется при изменении URL-адреса значка («иконки закладки») страницы. Новый URL-адрес задаётся параметром url.
Примечание: Сигнал уведомления для свойства iconUrl.
См. также iconUrl(), icon() и iconChanged().
[signal] void QWebEnginePage::linkHovered(const QString &url)
Этот сигнал генерируется при наведении курсора на ссылку. url содержит целевой URL ссылки.
[signal] void QWebEnginePage::loadFinished(bool ok)
Этот сигнал генерируется при завершении загрузки содержимого страницы. Этот сигнал независим от выполнения скриптов или рендеринга страницы. ok указывает, была ли загрузка успешной или произошла ошибка.
Примечание: Запросы на навигацию могут быть делегированы приложению Qt, а не обрабатываться движком обработчика HTML, переопределяя функцию acceptNavigationRequest(). Поскольку процесс загрузки запускается и сигнал loadStarted() генерируется *до* принятия или отклонения запроса, ожидается сигнал loadFinished(), возвращающий false, даже после делегирования запроса.
См. также loadStarted() и acceptNavigationRequest().
[signal] void QWebEnginePage::loadProgress(int progress)
Этот сигнал генерируется при изменении общего состояния выполнения загрузки. Текущее значение предоставляется параметром progress и изменяется в диапазоне от 0 до 100, что соответствует стандартному диапазону QProgressBar. Он аккумулирует изменения из всех дочерних фреймов.
[signal] void QWebEnginePage::loadStarted()
Этот сигнал генерируется при начале загрузки содержимого страницы.
См. также loadFinished() и acceptNavigationRequest().
[signal] void QWebEnginePage::pdfPrintingFinished(const QString &filePath, bool success)
Этот сигнал испускается при завершении печати веб-страницы в файл PDF. filePath будет содержать путь к файлу, который был запрошен для создания, а success будет равно true в случае успешного создания файла и false в противном случае.
Эта функция была введена в Qt 5.9.
См. также printToPdf().
[signal] void QWebEnginePage::printRequested()
Этот сигнал испускается при вызове JavaScript-метода window.print(). Как правило, обработчик сигнала может просто вызвать printToPdf().
Эта функция была введена в Qt 5.12.
См. также printToPdf().
[signal] void QWebEnginePage::proxyAuthenticationRequired(const QUrl &requestUrl, QAuthenticator *authenticator, const QString &proxyHost)
Этот сигнал испускается, когда доступ к requestUrl через proxyHost требует аутентификации для прокси-сервера. authenticator должен использоваться для передачи имени пользователя и пароля для подключения.
[signal] void QWebEnginePage::quotaRequested(QWebEngineQuotaRequest quotaRequest)
Этот сигнал испускается, когда веб-страница запрашивает больший объём постоянного хранилища, чем текущий объём, выделенный приложением в API файловой системы. Значение по умолчанию для квоты — 0 байт.
Объект запроса quotaRequest может использоваться для принятия или отклонения запроса.
Эта функция была введена в Qt 5.11.
[signal] void QWebEnginePage::recentlyAudibleChanged(bool recentlyAudible)
Этот сигнал испускается, когда состояние страницы, recentlyAudible, меняется, потому что воспроизведение звука началось или остановилось.
Примечание: Сигнал также испускается при вызове метода setAudioMuted(). Кроме того, если звук приостановлен, этот сигнал испускается с приблизительной задержкой в две секунды с момента приостановки звука.
Эта функция была введена в Qt 5.7.
Примечание: Сигнал уведомления для свойства recentlyAudible.
[signal] void QWebEnginePage::registerProtocolHandlerRequested(QWebEngineRegisterProtocolHandlerRequest request)
Этот сигнал испускается, когда веб-страница пытается зарегистрировать пользовательский протокол с помощью API registerProtocolHandler.
Объект запроса request может использоваться для принятия или отклонения запроса:
void WebPage::handleRegisterProtocolHandlerRequested(QWebEngineRegisterProtocolHandlerRequest request)
{
auto answer = QMessageBox::question(
view()->window(),
tr("Permission Request"),
tr("Allow %1 to open all %2 links?")
.arg(request.origin().host())
.arg(request.scheme()));
if (answer == QMessageBox::Yes)
request.accept();
else
request.reject();
} Эта функция была введена в Qt 5.11.
[signal] void QWebEnginePage::renderProcessTerminated(QWebEnginePage::RenderProcessTerminationStatus terminationStatus, int exitCode)
Этот сигнал испускается, когда процесс отрисовки завершается с ненулевым кодом выхода. terminationStatus — это код завершения процесса, а exitCode — код состояния, с которым процесс завершился.
Эта функция была введена в Qt 5.6.
[signal] void QWebEnginePage::selectClientCertificate(QWebEngineClientCertificateSelection clientCertificateSelection)
Этот сигнал испускается, когда веб-сайт запрашивает SSL-клиентский сертификат, и один или несколько были найдены в хранилище клиентских сертификатов системы.
Обработка сигнала асинхронна, и загрузка будет ожидать, пока сертификат не будет выбран или пока последний экземпляр clientCertificateSelection не будет уничтожен.
Если сигнал не обрабатывается, clientCertificateSelection автоматически уничтожается, и загрузка продолжится без клиентского сертификата.
Эта функция была введена в Qt 5.12.
См. также QWebEngineClientCertificateSelection.
[signal] void QWebEnginePage::selectionChanged()
Этот сигнал испускается всякий раз, когда выделение изменяется, как интерактивно, так и программно. Например, вызвав triggerAction() с действием выделения.
Примечание: При использовании мыши для выделения текста щелчком левой кнопкой мыши и перетаскиванием сигнал будет испускаться для каждого нового выбранного символа, а не при отпускании левой кнопки мыши.
См. также selectedText().
[signal] void QWebEnginePage::titleChanged(const QString &title)
Этот сигнал испускается всякий раз, когда заголовок страницы изменяется. Строка title указывает новый заголовок.
См. также title().
[signal] void QWebEnginePage::urlChanged(const QUrl &url)
Этот сигнал испускается с URL-адресом страницы, когда получен заголовок страницы. Новый URL указан в url.
См. также url().
[signal] void QWebEnginePage::windowCloseRequested()
Этот сигнал испускается всякий раз, когда страница запрашивает закрытие окна веб-браузера, например, с помощью вызова JavaScript window.close().
См. также RequestClose.
[virtual] QWebEnginePage::~QWebEnginePage()
Уничтожает веб-страницу.
[virtual protected] bool QWebEnginePage::acceptNavigationRequest(const QUrl &url, QWebEnginePage::NavigationType type, bool isMainFrame)
Эта функция вызывается при получении запроса на навигацию к указанному url с использованием указанного типа навигации type. isMainFrame указывает, соответствует ли запрос главному фрейму или дочернему фрейму. Если функция возвращает true, запрос на навигацию принимается и url загружается. По умолчанию все запросы на навигацию принимаются.
Эта функция вызывается для абсолютных URL-адресов, которые начинаются с http:// или https://, и для неизвестных схем, таких как mailto:, которые будут обрабатываться QDesktopServices, если приняты. Чтобы эта функция также вызывалась при получении запросов на навигацию к локальным URL-адресам, добавьте префикс http:// к URL-адресам.
Запросы на навигацию можно делегировать приложению Qt вместо обработки их движком HTML-обработчика, переопределив эту функцию. Это необходимо, когда HTML-документ используется как часть пользовательского интерфейса, а не для отображения внешних данных, например, при отображении списка результатов.
Примечание: Процесс загрузки запускается, и сигнал loadStarted() испускается до принятия или отклонения запроса. Поэтому, ожидается сигнал loadFinished(), который возвращает false даже после делегирования запроса.
Класс QWebEngineUrlRequestInterceptor предоставляет дополнительные возможности для перехвата и изменения запросов.
Эта функция была введена в Qt 5.5.
QAction *QWebEnginePage::action(QWebEnginePage::WebAction action) const
Возвращает QAction для указанного WebAction action.
Действие принадлежит QWebEnginePage, но вы можете настроить его внешний вид, изменив его свойства.
QWebEnginePage также отвечает за выполнение действия, так что при срабатывании соответствующего действия выполняется на странице.
См. также triggerAction().
[virtual protected] bool QWebEnginePage::certificateError(const QWebEngineCertificateError &certificateError)
Эта функция вызывается, когда возникает ошибка недействительного сертификата во время загрузки данного запроса.
Параметр certificateError содержит информацию о сертификате и подробности об ошибке.
Возвратите true для игнорирования ошибки и завершения запроса. Возвратите false для остановки загрузки запроса.
См. также QWebEngineCertificateError.
[virtual protected] QStringList QWebEnginePage::chooseFiles(QWebEnginePage::FileSelectionMode mode, const QStringList &oldFiles, const QStringList &acceptedMimeTypes)
Эта функция вызывается, когда веб-контент запрашивает имя файла, например, в результате нажатия пользователем на кнопку загрузки файла в HTML-форме.
mode указывает, ожидается ли только один файл или несколько файлов.
В качестве первого элемента в oldFiles можно указать предполагаемое имя файла. acceptedMimeTypes игнорируется в стандартной реализации, но может использоваться в переопределениях.
const QWebEngineContextMenuData &QWebEnginePage::contextMenuData() const
Возвращает дополнительные данные о текущем контекстном меню. Гарантируется, что данные будут валидными только во время вызова обработчика QWebEngineView::contextMenuEvent() связанного с QWebEngineView.
Эта функция была добавлена в Qt 5.7.
См. также createStandardContextMenu().
QMenu *QWebEnginePage::createStandardContextMenu()
Создаёт стандартное контекстное меню, которое отображается при щелчке правой кнопкой мыши по веб-странице. Оно вызывается по умолчанию из обработчика contextMenuEvent(). Владение созданным всплывающим меню передаётся вызывающей стороне.
Возвращает nullptr, если данные контекстного меню не инициализированы, например, если оно вызывается, когда на самом деле контекстное меню не требуется.
[virtual protected] QWebEnginePage *QWebEnginePage::createWindow(QWebEnginePage::WebWindowType type)
Эта функция вызывается для создания нового окна заданного типа type. Например, когда JavaScript-программа запрашивает открытие документа в новом окне.
Если новое окно может быть создано, возвращается QWebEnginePage нового окна; в противном случае возвращается нулевой указатель.
Если представление, связанное с веб-страницей, является объектом QWebEngineView, то стандартная реализация перенаправляет запрос на QWebEngineView::createWindow; в противном случае возвращается нулевой указатель.
Примечание: В случаях, когда создание окна инициируется JavaScript, помимо переопределения этого метода, приложение должно установить QWebEngineSettings::JavascriptCanOpenWindows в true для вызова этого метода.
См. также QWebEngineView::createWindow().
QWebEnginePage *QWebEnginePage::devToolsPage() const
Возвращает страницу, на которой размещены инструменты разработчика этой страницы, если таковые есть.
Возвращает nullptr если страница инструментов разработчика не задана.
Эта функция была добавлена в Qt 5.11.
См. также setDevToolsPage() и inspectedPage().
void QWebEnginePage::download(const QUrl &url, const QString &filename = QString())
Загружает ресурс из указанного адреса url в локальный файл.
Если filename указано, оно используется как предполагаемое имя файла. Если оно относительное, файл сохраняется в стандартном расположении для загрузок с заданным именем. Если оно null или пустая QString, используется имя файла по умолчанию.
Этот метод будет излучать QWebEngineProfile::downloadRequested() после начала загрузки.
Эта функция была добавлена в Qt 5.10.
[override virtual] bool QWebEnginePage::event(QEvent *e)
Переопределяет: QObject::event(QEvent *e).
void QWebEnginePage::findText(const QString &subString, QWebEnginePage::FindFlags options = ..., const QWebEngineCallback<bool> &resultCallback = ...)
Ищет указанную строку subString на странице с заданными параметрами options.
Чтобы очистить выделение при поиске, просто передайте пустую строку.
resultCallback должен принимать булевый параметр. Он будет вызван со значением true если subString найдена; в противном случае значение обратного вызова будет false.
Предупреждение: Мы гарантируем, что обратный вызов (resultCallback) всегда будет вызван, но это может произойти во время уничтожения страницы. Когда QWebEnginePage удаляется, обратный вызов срабатывает с недействительным значением, и использование соответствующего объекта QWebEnginePage или QWebEngineView внутри него небезопасно.
Например:
m_view->page()->findText(QStringLiteral("Qt"), QWebEnginePage::FindFlags(), [this](bool found) {
if (!found) QMessageBox::information(m_view, QString(), QStringLiteral("No occurrences found"));
}); QWebEngineHistory *QWebEnginePage::history() const
Возвращает указатель на историю навигации по веб-страницам.
QWebEnginePage *QWebEnginePage::inspectedPage() const
Возвращает страницу, которую эта страница инспектирует, если такая есть.
Возвращает nullptr если эта страница не является страницей инструментов разработчика.
Эта функция была добавлена в Qt 5.11.
См. также setInspectedPage() и devToolsPage().
[virtual protected] void QWebEnginePage::javaScriptAlert(const QUrl &securityOrigin, const QString &msg)
Эта функция вызывается всякий раз, когда JavaScript-программа, выполняемая в фрейме, связанном с securityOrigin, вызывает функцию alert() с сообщением msg.
Стандартная реализация отображает сообщение msg с помощью QMessageBox::information.
[virtual protected] bool QWebEnginePage::javaScriptConfirm(const QUrl &securityOrigin, const QString &msg)
Эта функция вызывается всякий раз, когда JavaScript-программа, выполняемая в фрейме, связанном с securityOrigin, вызывает функцию confirm() с сообщением msg. Возвращает true если пользователь подтверждает сообщение; в противном случае возвращает false.
Также вызывается, когда обработчик onbeforeunload запрашивает подтверждение перед переходом на другую страницу.
Стандартная реализация выполняет запрос с помощью QMessageBox::information с кнопками QMessageBox::Ok и QMessageBox::Cancel.
[virtual protected] void QWebEnginePage::javaScriptConsoleMessage(QWebEnginePage::JavaScriptConsoleMessageLevel level, const QString &message, int lineNumber, const QString &sourceID)
Эта функция вызывается, когда JavaScript-программа пытается вывести message в консоль веб-браузера.
Например, в случае ошибок вычислений исходный URL может быть предоставлен в sourceID, а также lineNumber.
level указывает степень важности события, вызвавшего сообщение. То есть, вызвана ли ошибка или менее важное событие.
Начиная с Qt 5.6, стандартная реализация записывает сообщения в js категорию регистрации.
См. также Консольная регистрация.
[virtual protected] bool QWebEnginePage::javaScriptPrompt(const QUrl &securityOrigin, const QString &msg, const QString &defaultValue, QString *result)
Эта функция вызывается всякий раз, когда JavaScript-программа, выполняемая в фрейме, связанном с securityOrigin, пытается запросить у пользователя ввод. Программа может предоставить необязательное сообщение msg, а также значение по умолчанию для ввода в defaultValue.
Если пользователь отменил запрос, реализация должна вернуть false; в противном случае результат должен быть записан в result и должна быть возвращена true. Если пользователь не отменил запрос, реализация должна вернуть true, и строка результата не должна быть null.
Стандартная реализация использует QInputDialog::getText().
void QWebEnginePage::load(const QUrl &url)
Загружает url на эту страницу.
Примечание: Представление остается прежним до тех пор, пока не прибудет достаточно данных для отображения нового URL.
См. также setUrl(), setHtml() и setContent().
void QWebEnginePage::load(const QWebEngineHttpRequest &request)
Выполняет указанный request и загружает ответ.
Эта функция была добавлена в Qt 5.9.
См. также load(), setUrl(), url(), urlChanged() и QUrl::fromUserInput().
void QWebEnginePage::print(QPrinter *printer, const QWebEngineCallback<bool> &resultCallback)
Отображает текущее содержимое страницы в временном документе PDF, затем печатает его с помощью принтера.
Настройки для создания и печати документа PDF будут получены из объекта принтер. Пользователь отвечает за обеспечение того, чтобы принтер оставался действительным до вызова resultCallback.
Примечание: Печать выполняется в процессе браузера, который по умолчанию не защищен песочницей.
resultCallback должен принимать булево значение в качестве параметра. Если печать прошла успешно, это булево значение будет иметь значение true, в противном случае — значение false.
Предупреждение: Гарантируется, что обратный вызов (resultCallback) всегда будет вызван, но это может произойти во время уничтожения страницы. При удалении QWebEnginePage обратный вызов срабатывает с недопустимым значением, и использование соответствующего экземпляра QWebEnginePage или QWebEngineView внутри него небезопасно.
Эта функция была добавлена в Qt 5.8.
void QWebEnginePage::printToPdf(const QString &filePath, const QPageLayout &pageLayout = QPageLayout(QPageSize(QPageSize::A4), QPageLayout::Portrait, QMarginsF()))
Отображает текущее содержимое страницы в документе PDF и сохраняет его в указанном в filePath расположении. Размер страницы и ориентация создаваемого документа PDF берутся из значений, указанных в pageLayout.
Этот метод отправляет асинхронный запрос на печать веб-страницы в формате PDF и возвращает результат немедленно. Чтобы получить информацию о результате запроса, подключитесь к сигналу pdfPrintingFinished().
Если файл с указанным путем уже существует, он будет перезаписан.
Эта функция была добавлена в Qt 5.7.
См. также pdfPrintingFinished().
void QWebEnginePage::printToPdf(const QWebEngineCallback<const QByteArray &> &resultCallback, const QPageLayout &pageLayout = QPageLayout(QPageSize(QPageSize::A4), QPageLayout::Portrait, QMarginsF()))
Отображает текущее содержимое страницы в документе PDF и возвращает массив байтов, содержащий данные PDF, в качестве параметра для resultCallback. Размер страницы и ориентация создаваемого документа PDF берутся из значений, указанных в pageLayout.
resultCallback должен принимать константную ссылку на QByteArray в качестве параметра. Если печать прошла успешно, этот массив байтов будет содержать данные PDF, в противном случае массив байтов будет пустым.
Предупреждение: Гарантируется, что обратный вызов (resultCallback) всегда будет вызван, но это может произойти во время уничтожения страницы. При удалении QWebEnginePage обратный вызов срабатывает с недопустимым значением, и использование соответствующего экземпляра QWebEnginePage или QWebEngineView внутри него небезопасно.
Эта функция была добавлена в Qt 5.7.
QWebEngineProfile *QWebEnginePage::profile() const
Возвращает профиль веб-движка, к которому принадлежит страница.
Эта функция была добавлена в Qt 5.5.
void QWebEnginePage::replaceMisspelledWord(const QString &replacement)
Заменяет текущее неправильно написанное слово на replacement.
Текущее неправильно написанное слово можно найти в QWebEngineContextMenuData::misspelledWord(), а предложенные замены — в QWebEngineContextMenuData::spellCheckerSuggestions().
Эта функция была добавлена в Qt 5.8.
См. также contextMenuData().
void QWebEnginePage::save(const QString &filePath, QWebEngineDownloadItem::SavePageFormat format = QWebEngineDownloadItem::MimeHtmlSaveFormat) const
Сохраняет загруженную веб-страницу на диск.
Веб-страница сохраняется в filePath в указанном формате format.
Это краткая запись для следующих действий:
- Вызвать действие Сохранить веб-страницу.
- Принять следующий элемент загрузки и установить указанный путь к файлу и формат сохранения.
Этот метод отправляет асинхронный запрос на загрузку веб-страницы и возвращает результат немедленно.
Эта функция была добавлена в Qt 5.8.
См. также QWebEngineDownloadItem::SavePageFormat.
QWebEngineScriptCollection &QWebEnginePage::scripts()
Возвращает коллекцию скриптов, которые вставлены на страницу.
Кроме того, страница может также выполнять скрипты, добавленные через QWebEngineProfile::scripts().
См. также QWebEngineScriptCollection и QWebEngineScript.
void QWebEnginePage::setContent(const QByteArray &data, const QString &mimeType = QString(), const QUrl &baseUrl = QUrl())
Устанавливает содержимое веб-страницы на data. Если аргумент mimeType пустой, предполагается, что содержимое является text/plain,charset=US-ASCII.
Внешние объекты, упоминаемые в содержимом, находятся относительно baseUrl.
data загружается немедленно; внешние объекты загружаются асинхронно.
Примечание: Этот метод не повлияет на сеанс или глобальную историю для страницы.
Предупреждение: Содержимое будет закодировано в процентах перед отправкой в рендерер через IPC. Это может увеличить его размер. Максимальный размер закодированного в процентах содержимого составляет 2 мегабайта минус 6 байтов плюс длина строки MIME-типа.
См. также toHtml() и setHtml().
void QWebEnginePage::setDevToolsPage(QWebEnginePage *devToolsPage)
Связывает devToolsPage с инструментами разработчика этой страницы. Вызывает devToolsPage для перехода по внутренней ссылке с инструментами разработчика.
Это то же самое, что вызов setInspectedPage() на devToolsPage с this в качестве аргумента.
Эта функция была добавлена в Qt 5.11.
См. также devToolsPage() и setInspectedPage().
void QWebEnginePage::setFeaturePermission(const QUrl &securityOrigin, QWebEnginePage::Feature feature, QWebEnginePage::PermissionPolicy policy)
Устанавливает разрешение для веб-сайта, идентифицированного securityOrigin, использовать feature с политикой policy.
Примечание: Вызывайте этот метод в сигнале featurePermissionRequested(), так как он предназначен только для обработки ожидающих запросов на разрешения. Установка разрешений на функции до запроса не влияет на результат.
См. также featurePermissionRequested() и featurePermissionRequestCanceled().
void QWebEnginePage::setHtml(const QString &html, const QUrl &baseUrl = QUrl())
Устанавливает содержимое этой страницы на html. baseUrl является необязательным и используется для разрешения относительных URL-адресов в документе, таких как ссылки на изображения или таблицы стилей.
html загружается немедленно; внешние объекты загружаются асинхронно.
Если скрипт в html выполняется дольше, чем стандартный таймаут выполнения скриптов (в настоящее время 10 секунд), например, из-за блокировки модальным диалоговым окном JavaScript alert, этот метод вернётся как можно скорее после таймаута, а все последующие html будут загружены асинхронно.
При использовании этого метода веб-движок предполагает, что внешние ресурсы, такие как JavaScript-программы или таблицы стилей, закодированы в UTF-8, если не указано иное. Например, кодировка внешнего скрипта может быть указана через атрибут charset тега HTML script. Также кодировка может быть указана веб-сервером.
Это функция-обёртка, эквивалентная setContent(html, "text/html", baseUrl).
Примечание: Этот метод не повлияет на сеанс или глобальную историю для страницы.
Предупреждение: Эта функция работает только для HTML; для других MIME-типов (таких как XHTML и SVG) следует использовать setContent().
Предупреждение: Содержимое будет закодировано в процентах перед отправкой в рендерер через IPC. Это может увеличить его размер. Максимальный размер закодированного в процентах содержимого составляет 2 мегабайта минус 30 байтов.
См. также toHtml(), setContent() и load().
void QWebEnginePage::setInspectedPage(QWebEnginePage *page)
Перенаправляет эту страницу на внутренний URL-адрес, который является инструментами разработчика page.
Это то же самое, что вызов setDevToolsPage() на page с this в качестве аргумента.
Эта функция была добавлена в Qt 5.11.
См. также inspectedPage() и setDevToolsPage().
void QWebEnginePage::setUrlRequestInterceptor(QWebEngineUrlRequestInterceptor *interceptor)
Регистрирует обработчик запросов interceptor для перехвата запросов к URL.
Страница не берет на себя управление указателем. Этот обработчик вызывается после любого обработчика в профиле, и, в отличие от обработчиков профиля, выполняется в потоке пользовательского интерфейса, что делает его более безопасным для потоков. Перехватываются только запросы URL с этой страницы.
Чтобы сбросить обработчик запросов, установите nullptr.
Эта функция была добавлена в Qt 5.13.
См. также QWebEngineUrlRequestInfo и QWebEngineProfile::setRequestInterceptor().
void QWebEnginePage::setView(QWidget *view)
Устанавливает view, связанный с веб-страницей.
См. также view().
void QWebEnginePage::setWebChannel(QWebChannel *channel, uint worldId)
Устанавливает экземпляр веб-канала, который будет использоваться этой страницей, в channel и подключает его к транспортной системе веб-движка с помощью сообщений Chromium IPC. Транспорт доступен в JavaScript-среде worldId как qt.webChannelTransport, который следует использовать при использовании Qt WebChannel JavaScript API.
Примечание: Страница не берет на себя управление объектом канала.
Примечание: Только один веб-канал может быть установлен на страницу, установка другого, даже в другой JavaScript-среде, удаляет любой ранее установленный веб-канал.
Эта функция была добавлена в Qt 5.7.
См. также webChannel() и QWebEngineScript::ScriptWorldId.
void QWebEnginePage::setWebChannel(QWebChannel *channel)
Это перегруженная функция.
Устанавливает экземпляр веб-канала, который будет использоваться этой страницей, в channel и устанавливает его в основной JavaScript-среде.
С помощью этого метода к веб-содержимому страницы можно получить доступ через веб-канал. Если содержимое не находится под вашим контролем и может быть небезопасным, это может быть проблемой безопасности, и вы должны рассмотреть возможность установки его в частной JavaScript-среде.
Эта функция была добавлена в Qt 5.5.
См. также QWebEngineScript::MainWorld.
QWebEngineSettings *QWebEnginePage::settings() const
Возвращает указатель на объект настроек страницы.
См. также QWebEngineSettings::globalSettings().
void QWebEnginePage::toHtml(const QWebEngineCallback<const QString &> &resultCallback) const
Асинхронный метод для получения содержимого страницы в формате HTML, заключённого в теги HTML и BODY. По завершении успешно, resultCallback вызывается с содержимым страницы.
Примечание: resultCallback может быть любым: указателем на функцию, функтором или лямбда-выражением, и ожидается, что он примет параметр QString.
Предупреждение: Мы гарантируем, что обратный вызов (resultCallback) всегда вызывается, но это может произойти во время уничтожения страницы. Когда QWebEnginePage удаляется, обратный вызов срабатывает с недопустимым значением, и использование соответствующего экземпляра QWebEnginePage или QWebEngineView внутри него небезопасно.
См. также setHtml() и toPlainText().
void QWebEnginePage::toPlainText(const QWebEngineCallback<const QString &> &resultCallback) const
Асинхронный метод для получения содержимого страницы, преобразованного в обычный текст, полностью очищенного от всех форматирований HTML. По завершении успешно, resultCallback вызывается с содержимым страницы.
Примечание: resultCallback может быть любым: указателем на функцию, функтором или лямбда-выражением, и ожидается, что он примет параметр QString.
Предупреждение: Мы гарантируем, что обратный вызов (resultCallback) всегда вызывается, но это может произойти во время уничтожения страницы. Когда QWebEnginePage удаляется, обратный вызов срабатывает с недопустимым значением, и использование соответствующего экземпляра QWebEnginePage или QWebEngineView внутри него небезопасно.
См. также toHtml().
[virtual] void QWebEnginePage::triggerAction(QWebEnginePage::WebAction action, bool checked = ...)
Этот метод можно вызвать для запуска указанного действия action. Также он вызывается Qt WebEngine, если пользователь запускает действие, например, через пункт контекстного меню.
Если action — это действие с возможностью выбора, то checked указывает, включено ли действие.
См. также action().
QWidget *QWebEnginePage::view() const
Возвращает виджет представления, связанный с веб-страницей.
См. также setView().
QWebChannel *QWebEnginePage::webChannel() const
Возвращает указатель на экземпляр веб-канала, используемого этой страницей, или нулевой указатель, если он не был установлен. Этот канал автоматически использует внутренний механизм веб-движка по транспорту Chromium IPC, который доступен в JavaScript-контексте этой страницы как qt.webChannelTransport.
Эта функция была добавлена в Qt 5.5.
См. также setWebChannel().
© The Qt Company Ltd
Licensed under the GNU Free Documentation License, Version 1.3.
https://doc.qt.io/qt-5.13/qwebenginepage.html