Класс QWebEnginePage
Класс QWebEnginePage предоставляет объект для просмотра и редактирования веб-документов. Подробнее...
| Заголовок: | #include <QWebEnginePage> |
| qmake: | QT += webenginewidgets |
| С момента: | Qt 5.4 |
| Наследует: | QObject |
Этот класс был представлен в Qt 5.4.
Общие типы
| Перечисление | Feature { Уведомления, Геолокация, Запись аудио, Запись видео, Запись аудио и видео, …, Запись аудио и видео с рабочего стола} |
| Перечисление | FileSelectionMode { Открытие файла, Открытие нескольких файлов } |
| Перечисление | FindFlag { Назад, С учётом регистра } |
| Флаги | FindFlags |
| Перечисление | JavaScriptConsoleMessageLevel { Уровень информации, Уровень предупреждения, Уровень ошибки } |
| Перечисление | LifecycleState { Активный, Замороженный, Удалённый } |
| Перечисление | 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 |
| bool | isVisible() const |
| QWebEnginePage::LifecycleState | lifecycleState() 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 |
| QWebEnginePage::LifecycleState | recommendedState() 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 | setLifecycleState(QWebEnginePage::LifecycleState state) |
| void | setUrl(const QUrl &url) |
| void | setUrlRequestInterceptor(QWebEngineUrlRequestInterceptor *interceptor) |
| void | setView(QWidget *view) |
| void | setVisible(bool visible) |
| 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 | findTextFinished(const QWebEngineFindTextResult &result) |
| void | fullScreenRequested(QWebEngineFullScreenRequest fullScreenRequest) |
| void | geometryChangeRequested(const QRect &geom) |
| void | iconChanged(const QIcon &icon) |
| void | iconUrlChanged(const QUrl &url) |
| void | lifecycleStateChanged(QWebEnginePage::LifecycleState state) |
| 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 | recommendedStateChanged(QWebEnginePage::LifecycleState state) |
| 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 | visibleChanged(bool visible) |
| void | windowCloseRequested() |
Защищенные функции
| виртуальный bool | acceptNavigationRequest(const QUrl &url, QWebEnginePage::NavigationType type, bool isMainFrame) |
| виртуальный bool | certificateError(const QWebEngineCertificateError &certificateError) |
| виртуальный QStringList | chooseFiles(QWebEnginePage::FileSelectionMode mode, const QStringList &oldFiles, const QStringList &acceptedMimeTypes) |
| виртуальный QWebEnginePage * | createWindow(QWebEnginePage::WebWindowType type) |
| виртуальный void | javaScriptAlert(const QUrl &securityOrigin, const QString &msg) |
| виртуальный bool | javaScriptConfirm(const QUrl &securityOrigin, const QString &msg) |
| виртуальный void | javaScriptConsoleMessage(QWebEnginePage::JavaScriptConsoleMessageLevel level, const QString &message, int lineNumber, const QString &sourceID) |
| виртуальный bool | javaScriptPrompt(const QUrl &securityOrigin, const QString &msg, const QString &defaultValue, QString *result) |
Подробное описание
Страница веб-движка содержит содержимое HTML-документа, историю просмотренных ссылок и действия.
API QWebEnginePage очень похож на 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>. Он хранит объединённое с помощью OR сочетание значений FindFlag.
enum QWebEnginePage::JavaScriptConsoleMessageLevel
Это перечисление описывает различные уровни серьезности сообщений консоли JavaScript:
| Константа | Значение | Описание |
|---|---|---|
QWebEnginePage::InfoMessageLevel |
0 |
Сообщение является чисто информативным и может быть безопасно проигнорировано. |
QWebEnginePage::WarningMessageLevel |
1 |
Сообщение информирует о нестандартном поведении или ошибках, которые могут потребовать внимания. |
QWebEnginePage::ErrorMessageLevel |
2 |
Сообщение указывает на ошибку. |
enum QWebEnginePage::LifecycleState
Это перечисление описывает состояние жизненного цикла страницы:
| Константа | Значение | Описание |
|---|---|---|
QWebEnginePage::Active |
0 |
Нормальное состояние. |
QWebEnginePage::Frozen |
1 |
Состояние низкого использования процессора, где большинство источников задач HTML приостановлены. |
QWebEnginePage::Discarded |
2 |
Состояние очень низкого использования ресурсов, где весь контекст просмотра отбрасывается. |
Это перечисление было введено или изменено в Qt 5.14.
См. также lifecycleState, API жизненного цикла страницы и Пример жизненного цикла WebEngine.
enum QWebEnginePage::NavigationType
Это перечисление описывает тип запроса навигации:
| Постоянная | Значение | Описание |
|---|---|---|
QWebEnginePage::NavigationTypeLinkClicked |
0 |
Запрос на навигацию произошел в результате нажатия на ссылку. |
QWebEnginePage::NavigationTypeTyped |
1 |
Запрос на навигацию произошел в результате явного загрузки URL. |
QWebEnginePage::NavigationTypeFormSubmitted |
2 |
Запрос на навигацию произошел в результате отправки формы. |
QWebEnginePage::NavigationTypeBackForward |
3 |
Запрос на навигацию произошел в результате действия "Назад" или "Вперёд". |
QWebEnginePage::NavigationTypeReload |
4 |
Запрос на навигацию произошел в результате действия перезагрузки. |
QWebEnginePage::NavigationTypeRedirect |
6 |
Запрос на навигацию произошел в результате перенаправления, контролируемого содержимым или сервером. Это также включает автоматические перезагрузки. (Добавлена в Qt 5.14) |
QWebEnginePage::NavigationTypeOther |
5 |
Запрос на навигацию был вызван другими средствами, не охваченными выше. |
См. также acceptNavigationRequest().
перечисление QWebEnginePage::PermissionPolicy
Это перечисление описывает политики разрешений, которые пользователь может установить для доступа к данным или устройствам:
| Постоянная | Значение | Описание |
|---|---|---|
QWebEnginePage::PermissionUnknown |
0 |
Неизвестно, предоставит ли пользователь разрешение или откажет. |
QWebEnginePage::PermissionGrantedByUser |
1 |
Пользователь предоставил разрешение. |
QWebEnginePage::PermissionDeniedByUser |
2 |
Пользователь отказал в разрешении. |
См. также featurePermissionRequested(), featurePermissionRequestCanceled(), setFeaturePermission() и Feature.
перечисление QWebEnginePage::RenderProcessTerminationStatus
Это перечисление описывает состояние, в котором завершился процесс рендеринга:
| Постоянная | Значение | Описание |
|---|---|---|
QWebEnginePage::NormalTerminationStatus |
0 |
Процесс рендеринга завершился нормально. |
QWebEnginePage::AbnormalTerminationStatus |
1 |
Процесс рендеринга завершился с ненулевым кодом возврата. |
QWebEnginePage::CrashedTerminationStatus |
2 |
Процесс рендеринга завершился с ошибкой, например, из-за ошибки сегментации. |
QWebEnginePage::KilledTerminationStatus |
3 |
Процесс рендеринга был завершен, например, диспетчером задач. |
Это перечисление было введено или изменено в Qt 5.6.
перечисление 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 |
Запустить подключённый веб-инспектор для проверки выделенного элемента. (Добавлен в 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().
lifecycleState : LifecycleState
Это свойство содержит текущее состояние жизненного цикла страницы.
Следующие ограничения применяются к методу установки:
- Страница, visible, должна оставаться в состоянии
Active. - Если страница инспектируется с помощью devToolsPage, то обе страницы должны оставаться в состояниях
Active. - Страница в состоянии
Discardedможет перейти только в состояниеActive. Это вызовет перезагрузку страницы.
Это единственные жесткие ограничения на состояние жизненного цикла, но см. также recommendedState для рекомендуемых мягких ограничений.
Это свойство было добавлено в Qt 5.14.
Функции доступа:
| QWebEnginePage::LifecycleState | lifecycleState() const |
| void | setLifecycleState(QWebEnginePage::LifecycleState state) |
Сигнал уведомления:
| void | lifecycleStateChanged(QWebEnginePage::LifecycleState state) |
См. также recommendedState, API жизненного цикла страницы, и Пример жизненного цикла WebEngine.
recentlyAudible : const bool
Это свойство содержит текущее состояние воспроизводимости звука страницы, то есть, игрался ли недавно звук или нет.
Значение по умолчанию — false.
Это свойство было добавлено в Qt 5.7.
Функции доступа:
| bool | recentlyAudible() const |
Сигнал уведомления:
| void | recentlyAudibleChanged(bool recentlyAudible) |
См. также audioMuted.
recommendedState : const LifecycleState
Это свойство содержит рекомендуемое ограничение для состояния жизненного цикла страницы.
Установление состояния жизненного цикла на более низкое значение потребления ресурсов, чем рекомендуемое состояние, может привести к побочным эффектам, таким как остановка воспроизведения фонового аудио или потеря ввода данных HTML-формы. Однако установка состояния жизненного цикла на более высокое значение потребления ресурсов полностью безопасна.
Это свойство было добавлено в Qt 5.14.
Функции доступа:
| QWebEnginePage::LifecycleState | recommendedState() const |
Сигнал уведомления:
| void | recommendedStateChanged(QWebEnginePage::LifecycleState state) |
См. также lifecycleState, API жизненного цикла страницы, и Пример жизненного цикла WebEngine.
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().
visible : bool
Это свойство содержит информацию о том, считается ли страница видимой в API Page Visibility.
Установка этого свойства изменяет свойства Document.hidden и Document.visibilityState в JavaScript, которые веб-сайты могут использовать, чтобы добровольно уменьшить использование ресурсов, если они не видны пользователю.
Если страница подключена к view, это свойство будет управляться автоматически представлением в соответствии с его собственной видимостью.
Это свойство было введено в Qt 5.14.
Функции доступа:
| bool | isVisible() const |
| void | setVisible(bool visible) |
Сигнал-уведомление:
| void | visibleChanged(bool visible) |
См. также lifecycleState.
zoomFactor : qreal
Это свойство содержит коэффициент масштабирования содержимого страницы.
Допустимые значения находятся в диапазоне от 0.25 до 5.0. Значение по умолчанию — 1.0.
Функции доступа:
| qreal | zoomFactor() const |
| void | setZoomFactor(qreal factor) |
Документация по членам-функциям
void QWebEnginePage::runJavaScript(const QString &scriptSource)
void QWebEnginePage::runJavaScript(const QString &scriptSource, const QWebEngineCallback<const QVariant &> &resultCallback)
void QWebEnginePage::runJavaScript(const QString &scriptSource, quint32 worldId)
void QWebEnginePage::runJavaScript(const QString &scriptSource, quint32 worldId, const QWebEngineCallback<const QVariant &> &resultCallback)
Выполняет JavaScript-код, содержащийся в scriptSource, без проверки построения DOM страницы. Если вам нужен больший контроль над выполнением скрипта, используйте scripts() вместо этого.
Для избежания конфликтов с другими скриптами, выполняемыми на странице, указывается мир, в котором выполняется скрипт, с помощью worldId. Значения идентификаторов миров совпадают с предоставленными QWebEngineScript::ScriptWorldId, и лежат в диапазоне от 0 до 256. Если вы опустите world ID, скрипт выполнится в MainWorld.
По завершении выполнения скрипта, resultCallback вызывается с результатом последнего выполненного оператора. resultCallback может быть указателем на функцию, функтором или лямбда-выражением, и ожидается, что он примет параметр QVariant. Например:
page.runJavaScript("document.title", [](const QVariant &v) { qDebug() << v.toString(); }); Из JavaScript в качестве результирующего значения могут возвращаться только простые данные. Поддерживаются все типы данных JSON, а также, например, Date и ArrayBuffer. Неподдерживаются типы данных, такие как, например, Function и Promise.
Предупреждение: Не выполняйте длительные операции в функции обратного вызова, так как это может заблокировать отрисовку страницы веб-движка.
Предупреждение: Мы гарантируем, что обратный вызов (resultCallback) всегда будет вызван, но это может произойти во время уничтожения страницы. Когда QWebEnginePage удаляется, обратный вызов вызывается с недействительным значением, и использование соответствующего экземпляра QWebEnginePage или QWebEngineView внутри него небезопасно.
Эта документация была добавлена в Qt 5.7.
См. также scripts(), 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 аудио или видео.
Эта функция была добавлена в 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::findTextFinished(const QWebEngineFindTextResult &result)
Этот сигнал излучается, когда завершается поиск строки на странице. result — результат поиска строки.
Эта функция была добавлена в Qt 5.14.
См. также findText().
[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, оно используется в качестве предложенного имени файла. Если оно относительное, файл сохраняется в стандартном месте для загрузок с заданным именем. Если это нулевой или пустой 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. Сигнал findTextFinished() испускается при завершении поиска строки.
Для удаления выделения поиска просто передайте пустую строку.
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"));
}); См. также findTextFinished().
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-документ, затем печатает его с помощью printer.
Настройки для создания и печати PDF-документа будут взяты из объекта printer. Пользователь отвечает за то, чтобы printer оставался действительным до тех пор, пока не будет вызван 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 для перехода к внутренней URL-адресу с инструментами разработчика.
Это эквивалентно вызову 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::setUrlRequestInterceptor().
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::defaultSettings().
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.14/qwebenginepage.html