QWebEnginePage Class

QWebEnginePage クラスは、Web ドキュメントを閲覧・編集するためのオブジェクトを提供します。詳細...

ヘッダー #include <QWebEnginePage>
CMake: find_package(Qt6 REQUIRED COMPONENTS WebEngineCore)
target_link_libraries(mytarget PRIVATE Qt6::WebEngineCore)
qmake: QT += webenginecore
継承: QObject

パブリックな型

enum FileSelectionMode { FileSelectOpen, FileSelectOpenMultiple, FileSelectUploadFolder, FileSelectSave }
enum FindFlag { FindBackward, FindCaseSensitively }
flags FindFlags
enum JavaScriptConsoleMessageLevel { InfoMessageLevel, WarningMessageLevel, ErrorMessageLevel }
enum class LifecycleState { Active, Frozen, Discarded }
enum NavigationType { NavigationTypeLinkClicked, NavigationTypeTyped, NavigationTypeFormSubmitted, NavigationTypeBackForward, NavigationTypeReload, …, NavigationTypeOther }
enum RenderProcessTerminationStatus { NormalTerminationStatus, AbnormalTerminationStatus, CrashedTerminationStatus, KilledTerminationStatus }
enum WebAction { NoWebAction, Back, Forward, Stop, Reload, …, ChangeTextDirectionRTL }
enum WebWindowType { WebBrowserWindow, WebBrowserTab, WebDialog, WebBrowserBackgroundTab }

プロパティ

パブリック関数

QWebEnginePage(QObject *parent = nullptr)
QWebEnginePage(QWebEngineProfile *profile, QObject *parent = nullptr)
virtual ~QWebEnginePage()
QAction *action(QWebEnginePage::WebAction action) const
QColor backgroundColor() const
QSizeF contentsSize() const
(since 6.6) QString devToolsId() const
QWebEnginePage *devToolsPage() const
void download(const QUrl &url, const QString &filename = QString())
(since 6.8) std::optional<QWebEngineFrame> findFrameByName(QAnyStringView name)
void findText(const QString &subString, QWebEnginePage::FindFlags options = {}, const std::function<void (const QWebEngineFindTextResult &)> &resultCallback = std::function<void(const QWebEngineFindTextResult &)>())
bool hasSelection() const
QWebEngineHistory *history() const
QIcon icon() const
QUrl iconUrl() const
QWebEnginePage *inspectedPage() const
bool isAudioMuted() const
bool isLoading() const
bool isVisible() const
QWebEnginePage::LifecycleState lifecycleState() const
void load(const QUrl &url)
void load(const QWebEngineHttpRequest &request)
(since 6.8) QWebEngineFrame mainFrame()
void printToPdf(const QString &filePath, const QPageLayout &layout = QPageLayout(QPageSize(QPageSize::A4), QPageLayout::Portrait, QMarginsF()), const QPageRanges &ranges = {})
void printToPdf(const std::function<void (const QByteArray &)> &resultCallback, const QPageLayout &layout = QPageLayout(QPageSize(QPageSize::A4), QPageLayout::Portrait, QMarginsF()), const QPageRanges &ranges = {})
QWebEngineProfile *profile() const
bool recentlyAudible() const
QWebEnginePage::LifecycleState recommendedState() const
qint64 renderProcessPid() const
void replaceMisspelledWord(const QString &replacement)
QUrl requestedUrl() const
void runJavaScript(const QString &scriptSource, const std::function<void (const QVariant &)> &resultCallback)
void runJavaScript(const QString &scriptSource, quint32 worldId = 0, const std::function<void (const QVariant &)> &resultCallback = {})
void save(const QString &filePath, QWebEngineDownloadRequest::SavePageFormat format = QWebEngineDownloadRequest::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 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 setVisible(bool visible)
void setWebChannel(QWebChannel *channel, quint32 worldId = 0)
void setZoomFactor(qreal factor)
QWebEngineSettings *settings() const
QString title() const
void toHtml(const std::function<void (const QString &)> &resultCallback) const
void toPlainText(const std::function<void (const QString &)> &resultCallback) const
virtual void triggerAction(QWebEnginePage::WebAction action, bool checked = false)
QUrl url() 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 certificateError(const QWebEngineCertificateError &certificateError)
void contentsSizeChanged(const QSizeF &size)
(since 6.7) void desktopMediaRequested(const QWebEngineDesktopMediaRequest &request)
(since 6.4) void fileSystemAccessRequested(QWebEngineFileSystemAccessRequest request)
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()
(since 6.2) void loadingChanged(const QWebEngineLoadingInfo &loadingInfo)
(since 6.2) void navigationRequested(QWebEngineNavigationRequest &request)
(since 6.2) void newWindowRequested(QWebEngineNewWindowRequest &request)
void pdfPrintingFinished(const QString &filePath, bool success)
(since 6.8) void permissionRequested(QWebEnginePermission permission)
void printRequested()
(since 6.8) void printRequestedByFrame(QWebEngineFrame frame)
void proxyAuthenticationRequired(const QUrl &requestUrl, QAuthenticator *authenticator, const QString &proxyHost)
void recentlyAudibleChanged(bool recentlyAudible)
void recommendedStateChanged(QWebEnginePage::LifecycleState state)
void registerProtocolHandlerRequested(QWebEngineRegisterProtocolHandlerRequest request)
void renderProcessPidChanged(qint64 pid)
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)
(since 6.7) void webAuthUxRequested(QWebEngineWebAuthUxRequest *request)
void windowCloseRequested()
(since 6.8) void zoomFactorChanged(qreal factor)

保護された関数

virtual bool acceptNavigationRequest(const QUrl &url, QWebEnginePage::NavigationType type, bool isMainFrame)
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() (QWebEngineView ではpageAction() として知られています)、triggerAction()、findText() などの一般的な関数が用意されています。

ページの読み込みには、load ()またはsetUrl ()を使用します。また、HTMLコンテンツがすぐに利用できる場合は、setHtml ()を使用することもできます。URL のロードには常に GET メソッドが使用されます。

QWebEnginePage クラスには、ページが現在読み込んでいる URL (url() を参照) と、元々読み込むように要求されていた URL (requestedUrl() を参照) の両方を取得するメソッドも用意されています。これらのメソッドは、ロード処理中にDNS解決やリダイレクトが発生する前と後のURLの取得を可能にします。requestedUrl()は、読み込みが成功した場合に、ページ履歴に追加されるURL (QWebEngineHistory) にもマッチする。

HTMLページのタイトルには、title ()プロパティでアクセスできます。さらに、ページにはアイコンを指定することもでき、icon ()またはiconUrl ()プロパティを使用してそのURLにアクセスできます。タイトルやアイコンが変更されると、対応するtitleChanged()、iconChanged()、iconUrlChanged() シグナルが発行される。zoomFactor() プロパティを使用すると、Web ページのコンテンツを倍率でズームできます。

loadStarted() シグナルは、ページの読み込みが開始されたときに発信され、loadProgress() シグナルは、埋め込み画像やスクリプトなど、Web ページの要素の読み込みが完了したときに発信されます。loadFinished() シグナルは、スクリプトの実行やページのレンダリングとは無関係に、ページのコンテンツが完全にロードされたときに発行されます。その引数(true またはfalse )は、ロード操作が成功したかどうかを示します。

HTML文書はウェブページ内のメインフレームにロードされます。子フレーム<frame> または<iframe> 要素で定義)を参照する場合、それらはコンテンツの一部とみなされます。子フレームは、JavaScriptを通してのみ個別にアクセスできます。

Webサイトは、クライアントサイドスクリプティングやデータベースのために、互いのリソースに安全にアクセスするためのセキュリティオリジンを定義します。オリジンはホスト名、スキーム、ポート番号で構成される。例えば、http://www.example.com/my/page.htmlhttp://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 、この目的のためにいくつかの定義済みIDが用意されています。ワールドIDなしでrunJavaScript() バージョンを使用することは、MainWorld でスクリプトを実行することと同じです。

FocusOnNavigationEnabled 設定を使用すると、ナビゲーション操作(ページのロードやリロード、履歴のナビゲートなど)が発生したときに、ページに関連付けられたビューが自動的にフォーカスを受け取るようにすることができます。

メンバータイプのドキュメント

enum QWebEnginePage::FileSelectionMode

この列挙型は、chooseFiles() 関数の実装が 1 つのファイルのみを返すべきか、複数のファイルを返すべきかを示す:

定数説明
QWebEnginePage::FileSelectOpen01つのファイル名のみを返す。
QWebEnginePage::FileSelectOpenMultiple1複数のファイル名を返す。
QWebEnginePage::FileSelectUploadFolder2アップロードする既存のフォルダを1つ指定できます。
QWebEnginePage::FileSelectSave3作成する新規ファイルを指定します。

chooseFiles()も参照してください

enum QWebEnginePage::FindFlag
flags QWebEnginePage::FindFlags

この enum は、findText() 関数で利用可能なオプションを記述します。オプションは、以下のリストから OR で組み合わせることができます:

定数説明
QWebEnginePage::FindBackward1前方ではなく後方を検索します。
QWebEnginePage::FindCaseSensitively2デフォルトではfindText() は大文字小文字を区別せずに動作します。このオプションを指定すると、大文字小文字を区別する検索動作に変わります。

FindFlags 型はQFlags<FindFlag> の typedef です。これは、FindFlag値のORの組み合わせを格納します。

enum QWebEnginePage::JavaScriptConsoleMessageLevel

この列挙型は、JavaScript のコンソールメッセージが持つことができる異なる重大度レベルを記述します:

定数説明
QWebEnginePage::InfoMessageLevel0メッセージは純粋に有益であり、安全に無視することができます。
QWebEnginePage::WarningMessageLevel1メッセージは予期しない動作や、注意が必要なエラーについて知らせます。
QWebEnginePage::ErrorMessageLevel2メッセージはエラーがあったことを示します。

enum class QWebEnginePage::LifecycleState

この列挙型は、ページのライフサイクルの状態を記述する:

定数説明
QWebEnginePage::LifecycleState::Active0通常状態。
QWebEnginePage::LifecycleState::Frozen1ほとんどのHTMLタスクソースが中断される、CPU使用率が低い状態。
QWebEnginePage::LifecycleState::Discarded2閲覧コンテキスト全体が破棄される、リソース使用率が非常に低い状態。

lifecycleStatePage Lifecycle APIWebEngine Lifecycle Exampleも参照してください

この列挙型はナビゲーションリクエストのタイプを記述する:

定数説明
QWebEnginePage::NavigationTypeLinkClicked0クリックされたリンクからのナビゲーション要求。
QWebEnginePage::NavigationTypeTyped1ナビゲーション・リクエストは明示的にロードされたURLから生じた。
QWebEnginePage::NavigationTypeFormSubmitted2ナビゲーション・リクエストはフォーム送信から生じた。
QWebEnginePage::NavigationTypeBackForward3ナビゲーション・リクエストは戻るまたは進むアクションによって発生しました。
QWebEnginePage::NavigationTypeReload4ナビゲーション・リクエストはリロード操作によるものです。
QWebEnginePage::NavigationTypeRedirect (since Qt 5.14)6ナビゲーション リクエストがコンテンツまたはサーバー制御のリダイレクトによって発生した。これには自動リロードも含まれます。
QWebEnginePage::NavigationTypeOther5ナビゲーションリクエストが上記以外の手段で発生した。

acceptNavigationRequest()も参照

enum QWebEnginePage::RenderProcessTerminationStatus

この列挙型は、レンダリングプロセスが終了したステータスを記述します:

定数説明
QWebEnginePage::NormalTerminationStatus0レンダリングプロセスは正常に終了した。
QWebEnginePage::AbnormalTerminationStatus1レンダリングプロセスは、ゼロ以外の終了ステータスで終了しました。
QWebEnginePage::CrashedTerminationStatus2レンダリングプロセスがクラッシュした(セグメンテーションフォールトなど)。
QWebEnginePage::KilledTerminationStatus3レンダープロセスがSIGKILL またはタスクマネージャの kill などで強制終了した。

enum QWebEnginePage::WebAction

この列挙型は、ウェブページ上で実行できるアクションのタイプを記述します。

アクションは、適用可能な場合にのみ効果を持つ。

action()によって返されたアクションのisEnabled()をチェックすることによって、アクションの可用性を決定することができます。

定数説明
QWebEnginePage::NoWebAction- 1アクションは発生しません。
QWebEnginePage::Back0ナビゲートされたリンクの履歴を戻る。
QWebEnginePage::Forward1ナビゲートされたリンクの履歴を前方に移動する。
QWebEnginePage::Stop2現在のページの読み込みを停止する。
QWebEnginePage::Reload3現在のページを再読み込みします。
QWebEnginePage::ReloadAndBypassCache10現在のページを再読み込みするが、ローカルキャッシュは使用しない。
QWebEnginePage::Cut4現在選択されているコンテンツをクリップボードにカットする。
QWebEnginePage::Copy5現在選択されているコンテンツをクリップボードにコピーする。
QWebEnginePage::Paste6クリップボードの内容を貼り付ける。
QWebEnginePage::Undo7最後の編集操作を取り消す。
QWebEnginePage::Redo8最後の編集操作をやり直す。
QWebEnginePage::SelectAll9すべてのコンテンツを選択する。このアクションはページのコンテンツがフォーカスされているときのみ有効です。フォーカスはJavaScriptのwindow.focus() コールで強制することもできますし、FocusOnNavigationEnabled 設定を有効にして自動的にフォーカスを得ることもできます。
QWebEnginePage::PasteAndMatchStyle11現在のスタイルでクリップボードからコンテンツを貼り付ける。
QWebEnginePage::OpenLinkInThisWindow (since Qt 5.6)12現在のリンクを現在のウィンドウで開く。
QWebEnginePage::OpenLinkInNewWindow (since Qt 5.6)13現在のリンクを新しいウィンドウで開く。createWindow() またはnewWindowRequested() の実装が必要。
QWebEnginePage::OpenLinkInNewTab (since Qt 5.6)14現在のリンクを新しいタブで開きます。createWindow() またはnewWindowRequested() の実装が必要です。
QWebEnginePage::OpenLinkInNewBackgroundTab (since Qt 5.7)31現在のリンクを新しいバックグラウンドタブで開く。createWindow() またはnewWindowRequested() の実装が必要です。
QWebEnginePage::CopyLinkToClipboard (since Qt 5.6)15現在のリンクをクリップボードにコピーする。
QWebEnginePage::CopyImageToClipboard (since Qt 5.6)17クリックした画像をクリップボードにコピーする。
QWebEnginePage::CopyImageUrlToClipboard (since Qt 5.6)18クリックした画像のURLをクリップボードにコピーする。
QWebEnginePage::CopyMediaUrlToClipboard (since Qt 5.6)20ホバーされたオーディオまたはビデオのURLをクリップボードにコピーする。
QWebEnginePage::ToggleMediaControls (since Qt 5.6)21ホバーされたオーディオまたはビデオ要素のコントロールの表示/非表示を切り替えます。
QWebEnginePage::ToggleMediaLoop (since Qt 5.6)22ホバーされたオーディオまたはビデオを完了時にループさせるかどうかを切り替える。
QWebEnginePage::ToggleMediaPlayPause (since Qt 5.6)23ホバーしたオーディオまたはビデオ要素の再生/一時停止状態を切り替える。
QWebEnginePage::ToggleMediaMute (since Qt 5.6)24ホバーしたオーディオまたはビデオ要素のミュートまたはミュート解除。
QWebEnginePage::DownloadLinkToDisk (since Qt 5.6)16現在のリンクをディスクにダウンロードします。downloadRequested() のスロットが必要です。
QWebEnginePage::DownloadImageToDisk (since Qt 5.6)19ハイライトされた画像をディスクにダウンロードします。downloadRequested() のスロットが必要です。
QWebEnginePage::DownloadMediaToDisk (since Qt 5.6)25ホバーされたオーディオまたはビデオをディスクにダウンロードする。downloadRequested() のスロットが必要です。
QWebEnginePage::InspectElement (since Qt 5.6)26付属の Web インスペクタを起動して、ハイライトされた要素を検査します。
QWebEnginePage::ExitFullScreen (since Qt 5.6)27フルスクリーンモードを終了します。
QWebEnginePage::RequestClose (since Qt 5.6)28ウェブページを閉じるように要求します。定義されている場合、window.onbeforeunload ハンドラが実行され、ユーザーはページを閉じるかどうかを決定できます。閉じる要求が確認されると、windowCloseRequested
QWebEnginePage::Unselect (since Qt 5.7)29現在の選択をクリアする。
QWebEnginePage::SavePage (since Qt 5.7)30現在のページをディスクに保存する。MHTMLは、ウェブページをディスクに保存するために使用されるデフォルトフォーマットである。downloadRequested()のスロットが必要である。
QWebEnginePage::ViewSource (since Qt 5.8)32現在のページのソースを新しいタブに表示する。createWindow() またはnewWindowRequested() の実装が必要。
QWebEnginePage::ToggleBold (since Qt 5.10)33選択範囲またはカーソル位置の太字を切り替えます。contenteditable="true" の実装が必要です。
QWebEnginePage::ToggleItalic (since Qt 5.10)34選択範囲またはカーソル位置の斜体を切り替えます。contenteditable="true" が必要です。
QWebEnginePage::ToggleUnderline (since Qt 5.10)35選択範囲またはカーソル位置の下線をトグルする。contenteditable="true" が必要です。
QWebEnginePage::ToggleStrikethrough (since Qt 5.10)36選択範囲またはカーソル位置で取り消し線をトグルする。contenteditable="true" が必要です。
QWebEnginePage::AlignLeft (since Qt 5.10)37選択範囲またはカーソルを含む行を左に揃える。contenteditable="true" が必要です。
QWebEnginePage::AlignCenter (since Qt 5.10)38選択範囲またはカーソルを含む行を中央に揃える。contenteditable="true" が必要です。
QWebEnginePage::AlignRight (since Qt 5.10)39選択範囲またはカーソルを含む行を右に揃える。contenteditable="true" が必要です。
QWebEnginePage::AlignJustified (since Qt 5.10)40選択範囲またはカーソルを含む行を、各行の幅が等しくなるように伸ばします。contenteditable="true" が必要です。
QWebEnginePage::Indent (since Qt 5.10)41選択範囲またはカーソルを含む行をインデントする。contenteditable="true" が必要です。
QWebEnginePage::Outdent (since Qt 5.10)42選択範囲またはカーソルを含む行をアウトデントします。contenteditable="true" が必要です。
QWebEnginePage::InsertOrderedList (since Qt 5.10)43現在のカーソル位置に順序付きリストを挿入し、現在の選択範囲を削除する。contenteditable="true" が必要です。
QWebEnginePage::InsertUnorderedList (since Qt 5.10)44現在のカーソル位置に順序なしリストを挿入し、現在の選択範囲を削除する。contenteditable="true" が必要です。
QWebEnginePage::ChangeTextDirectionLTR (since Qt 6.6)45フォーカスされている入力要素のテキストの方向を左から右に変更する。
QWebEnginePage::ChangeTextDirectionRTL (since Qt 6.6)46フォーカスされている入力要素内のテキストの方向を右から左に変更する。

enum QWebEnginePage::WebWindowType

この列挙型は、createWindow() 関数で作成できるウィンドウのタイプを記述します:

定数説明
QWebEnginePage::WebBrowserWindow0完全なウェブブラウザウィンドウ。
QWebEnginePage::WebBrowserTab1ウェブブラウザのタブ。
QWebEnginePage::WebDialog2装飾のないウィンドウ。
QWebEnginePage::WebBrowserBackgroundTab (since Qt 5.7)3現在表示されているWebEngineView を隠さないウェブブラウザタブ。

プロパティ ドキュメント

audioMuted : bool

このプロパティは、現在のページの音声がミュートされているかどうかを保持する。

デフォルト値はfalse です。

アクセス関数:

bool isAudioMuted() const
void setAudioMuted(bool muted)

Notifierシグナル:

void audioMutedChanged(bool muted)

recentlyAudibleも参照

backgroundColor : QColor

このプロパティは、ドキュメント本体の後ろにあるページの背景色を保持します。

背景色は、Qt::transparent 、またはドキュメントを透かして見るための半透明の色に設定することができます。また、ハイブリッド・アプリケーションのウェブ・コンテンツに合わせて設定することで、読み込み中に表示される可能性のある白いフラッシュを防ぐことができます。

デフォルト値は白です。

アクセス機能:

QColor backgroundColor() const
void setBackgroundColor(const QColor &color)

[read-only] contentsSize : const QSizeF

このプロパティは、ページコンテンツのサイズを保持する。

アクセス関数

QSizeF contentsSize() const

通知シグナル

void contentsSizeChanged(const QSizeF &size)

[read-only] hasSelection : const bool

このプロパティは、このページが選択されたコンテンツを含むかどうかを保持する。

アクセス関数:

bool hasSelection() const

selectionChanged()も参照

[read-only] icon : const QIcon

このプロパティは、現在表示されているページに関連付けられたアイコンを保持する。

デフォルトでは、このプロパティはnullアイコンを含む。タッチアイコンが無効な場合(QWebEngineSettings::TouchIconsEnabled を参照)、ファビコンはQIcon でカプセル化された2つのサイズ(16x16と32x32ピクセル)で提供される。そうでない場合は、単一のアイコンが利用可能な最大のサイズで提供されます。

アクセス関数:

QIcon icon() const

通知シグナル:

void iconChanged(const QIcon &icon)

iconChanged(),iconUrl(),iconUrlChanged(),QWebEngineSettings::TouchIconsEnabledも参照のこと

[read-only] iconUrl : const QUrl

このプロパティは、現在表示されているページに関連付けられたアイコンのURLを保持する。

デフォルトでは、このプロパティには空のURLが含まれます。

アクセス関数

QUrl iconUrl() const

Notifier シグナル:

void iconUrlChanged(const QUrl &url)

iconUrlChanged ()、icon ()、iconChanged)も参照

lifecycleState : LifecycleState

このプロパティは、ページの現在のライフサイクル状態を保持する。

セッターによって以下の制限が強制される:

  • visible ページはActive 状態のままでなければならない。
  • ページがdevToolsPage によって検査されている場合、両方のページはActive 状態のままでなければなりません。
  • Discarded 状態のページは、Active 状態にのみ遷移できる。これはページの再読み込みを引き起こす。

これらはライフサイクル状態に関する唯一のハード制限ですが、推奨されるソフト制限についてはrecommendedState も参照してください。

アクセス関数

QWebEnginePage::LifecycleState lifecycleState() const
void setLifecycleState(QWebEnginePage::LifecycleState state)

通知シグナル:

void lifecycleStateChanged(QWebEnginePage::LifecycleState state)

recommendedStatePage Lifecycle APIWebEngine Lifecycle Exampleも参照して ください。

[read-only, since 6.2] loading : const bool

このプロパティは、ページが現在ロード中かどうかを保持します。

このプロパティは Qt 6.2 で導入されました。

アクセス関数です:

bool isLoading() const

Notifier シグナル:

void loadingChanged(const QWebEngineLoadingInfo &loadingInfo)

QWebEngineLoadingInfoloadStartedloadFinishedも参照してください

[read-only] recentlyAudible : const bool

このプロパティは、現在のページの可聴状態、つまり音声が最近再生されたかどうかを保持します。

デフォルト値はfalse

アクセス関数:

bool recentlyAudible() const

Notifierシグナル:

void recentlyAudibleChanged(bool recentlyAudible)

audioMutedも参照

[read-only] recommendedState : const LifecycleState

このプロパティは、ページのライフサイクル状態の推奨限度を保持する。

ライフサイクル状態を推奨状態よりも低いリソース使用状態に設定すると、バックグラウンドのオーディオ再生が停止したり、HTMLフォーム入力が失われたりするなどの副作用が発生する可能性があります。しかし、ライフサイクル・ステートを高いリソース使用状態に設定することは、完全に安全です。

アクセス関数

QWebEnginePage::LifecycleState recommendedState() const

通知シグナル:

void recommendedStateChanged(QWebEnginePage::LifecycleState state)

lifecycleStatePage Lifecycle APIWebEngine Lifecycle Exampleも参照してください

[read-only] renderProcessPid : const qint64

このプロパティは、現在のページのメインフレームに割り当てられているレンダリングプロセスのプロセスID(PID)を保持する。

まだ利用可能なレンダープロセスがない場合は、0

アクセス関数

qint64 renderProcessPid() const

通知シグナル

void renderProcessPidChanged(qint64 pid)

[read-only] requestedUrl : const QUrl

このプロパティは、現在表示されているページが最初にロードを要求した URL を保持する。

注: このURLは、url ()によって返されるURLとは異なる場合があります。これは、DNS解決またはリダイレクトの結果として得られる実際のURLです。

アクセス関数:

QUrl requestedUrl() const

url() およびsetUrl()も参照の こと。

[read-only] scrollPosition : const QPointF

このプロパティは、ページコンテンツのスクロール位置を保持する。

アクセス関数

QPointF scrollPosition() const

通知シグナル

void scrollPositionChanged(const QPointF &position)

[read-only] selectedText : const QString

このプロパティは、現在選択されているテキストを保持する。

デフォルトでは、このプロパティには空の文字列が格納されます。

アクセス関数:

QString selectedText() const

selectionChanged()も参照してください

[read-only] title : const QString

このプロパティは、HTML<title> 要素で定義されたページのタイトルを保持する。

ページに<title> 要素がない場合は、代わりに URL が使用されます。file:// URLの場合はファイル名のみが使用され、フル・パスは使用されません。

コンテンツが読み込まれる前のデフォルトでは、このプロパティには空の文字列が含まれます。

アクセス関数:

QString title() const

Notifier シグナル:

void titleChanged(const QString &title)

titleChanged()も参照のこと

url : QUrl

このプロパティは、現在表示されているページのURLを保持する。

このプロパティを設定すると、ビューがクリアされ、URLがロードされます。

デフォルトでは、このプロパティには空の無効なURLが格納されます。

アクセス関数

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

ノーティファイア・シグナル:

void urlChanged(const QUrl &url)

urlChanged()も参照のこと

visible : bool

このプロパティは、Page Visibility API においてページが可視であるとみなされるかどうかを保持する。

このプロパティを設定すると、JavaScript のDocument.hiddenDocument.visibilityState プロパティが変更されます。このプロパティを使用することで、Web サイトは、ユーザーが表示されていない場合に、自発的にリソースの使用量を減らすことができます。

ページがビューに接続されている場合、このプロパティはそれ自身の可視性に応じてビューによって自動的に管理されます。

アクセス関数

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 zoomFactorChanged(qreal factor)

zoomFactorChanged()も参照

メンバ関数ドキュメント

void QWebEnginePage::runJavaScript(const QString &scriptSource, const std::function<void (const QVariant &)> &resultCallback)

void QWebEnginePage::runJavaScript(const QString &scriptSource, quint32 worldId = 0, const std::function<void (const QVariant &)> &resultCallback = {})

ページのDOMが構築されているかどうかをチェックせずに、scriptSource に含まれるJavaScriptコードを実行する。スクリプトの実行方法をもっと制御する必要がある場合は、代わりにscripts() の使用を検討してください。

ページ上で実行される他のスクリプトとの衝突を避けるため、スクリプトが実行されるワールドはworldId で指定される。ワールドIDの値は、QWebEngineScript::ScriptWorldId で提供されるものと同じで、0256 の間にある。world IDを省略すると、スクリプトはMainWorld で実行される。

スクリプトが実行されると、最後に実行されたステートメントの結果でresultCallback が呼び出される。resultCallback は、関数ポインタ、ファンクタ、ラムダのいずれかであり、QVariant パラメータを取ることが期待される。例えば

page.runJavaScript("document.title", [](const QVariant &v) { qDebug() << v.toString(); });

JavaScriptから結果値として返せるのは、プレーンなデータだけです。サポートされるデータ型には、すべてのJSONデータ型と、例えばDateArrayBuffer 。サポートされていないデータ型には、FunctionPromise などがあります。

警告: Webエンジン・ページのレンダリングがブロックされる可能性があるため、コールバック関数内で長いルーチンを実行しないでください。

警告 コールバック (resultCallback) は常に呼び出されることを保証しますが、ページの破棄時に呼び出される可能性があります。QWebEnginePage が削除されると、コールバックは無効な値でトリガーされ、その内部で対応するQWebEnginePageQWebEngineView インスタンスを使用することは安全ではありません。

scripts()、QWebEngineScript::ScriptWorldIdQWebEngineFrame::runJavaScript 、およびスクリプト・インジェクションも参照してください

[explicit] QWebEnginePage::QWebEnginePage(QObject *parent = nullptr)

空の QWebEnginePage を親parent で構築します。

QWebEnginePage::QWebEnginePage(QWebEngineProfile *profile, QObject *parent = nullptr)

空の Web エン ジ ン ページ を、 親プ ロ フ ァ イ ルparent を持つ Web エン ジ ン プ ロ フ ァ イ ルprofile 内に構築 し ます。

プロファイルがデフォルトのプロファイルでない場合、呼び出し元はページが存続する限りプロファイルが存続するようにしなければなりません。

[virtual noexcept] QWebEnginePage::~QWebEnginePage()

ウェブページを破壊する。

[virtual protected] bool QWebEnginePage::acceptNavigationRequest(const QUrl &url, QWebEnginePage::NavigationType type, bool isMainFrame)

この関数は、指定されたナビゲーションタイプtype によって、指定されたurl にナビゲートする要求を受け取ると呼び出される。isMainFrame は、要求がメインフレームに対応するか、子フレームに対応するかを示す。この関数がtrue を返した場合、ナビゲーション要求は受け入れられ、url がロードされます。デフォルトの実装では、すべてのナビゲーション要求を受け入れます。

ナビゲーション要求は、この関数をオーバーロードすることで、HTMLハンドラエンジンに処理させる代わりに、Qtアプリケーションに委譲することができます。これは、HTMLドキュメントをユーザーインターフェースの一部として使用し、外部データを表示しない場合(例えば、結果のリストを表示する場合など)に必要です。

注意: この関数は、同じページのフラグメント・ナビゲーションでは呼び出されません。このようなナビゲーションは、例えばページ内の'#fragment'へのリンクをクリックすることで行われます。ページのURLが変更され、履歴エントリが追加されたとしても、別のドキュメントへの読み込みは行われません。ページ内をスクロールするためのショートカットとして機能するだけです。したがって、このナビゲーションタイプの委譲が起こることは期待できません。

注意: 読み込み処理が開始され、loadStarted ()シグナルが発せられるのは、リクエストが受け入れられるか拒否される前である。したがって、リクエストを委譲した後でも、false を返すloadFinished() シグナルが期待される。

注意: setHtmlsetContent を相対リンクで使う場合は、必ずベース URL を指定してください。そうしないとリンクは無効とみなされ、ナビゲーションリクエストは発行されません。

QWebEngineUrlRequestInterceptor クラスは、リクエストをインターセプトして操作するためのさらなる オプションを提供します。

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

指定されたWebAction actionQAction を返します。

アクションはQWebEnginePage によって所有されますが、プロパティを変更することで見た目をカスタマイズできます。

返されるアクションには、デフォルトのアイコンはありません。デフォルトのスタイルのアイコンを持つアクションを持つには、QWebEngineView::pageAction() を使用してください。

QWebEnginePage また、アクションの実装も行いますので、トリガーが発生すると、対応するアクションがページ上で実行されます。

triggerAction()も参照してください

[signal] void QWebEnginePage::audioMutedChanged(bool muted)

このシグナルは、ページのmuted ステートが変更されたときに発行されます。

: 特定の HTML5 audio 要素または video 要素がミュートされることと混同しないでください。

注: プロパティaudioMuted のノーティファイア シグナル。

[signal] void QWebEnginePage::authenticationRequired(const QUrl &requestUrl, QAuthenticator *authenticator)

このシグナルは、requestUrl へのアクセスに認証が必要な場合に発せられる。authenticator を使用して、接続用のユーザー名とパスワードを渡す必要がある。

[signal] void QWebEnginePage::certificateError(const QWebEngineCertificateError &certificateError)

このシグナルは、指定されたリクエストのロード中に無効な証明書エラーが 発生したときに発行される。

certificateError パラメータは証明書とエラーの詳細についての情報を含む。また、 エラーを無視してリクエストを完了したり、リクエストのロードを中止したり する方法も提供する。

QWebEngineCertificateErrorも参照してください

[virtual protected] QStringList QWebEnginePage::chooseFiles(QWebEnginePage::FileSelectionMode mode, const QStringList &oldFiles, const QStringList &acceptedMimeTypes)

この関数は、HTMLフォームのファイルアップロードボタンをユーザーがクリックした結果など、ウェブコンテンツがファイル名を要求したときに呼び出されます。

mode は、返されるファイルが1つだけなのか複数なのかを示します。

oldFiles acceptedMimeTypes はデフォルトの実装では無視されますが、オーバーライドによって使用される可能性があります。

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

この関数は、指定されたtype の新しいウィンドウを作成するために呼び出される。たとえば、JavaScript プログラムが新しいウィンドウでドキュメントを開くように要求した場合などです。

新しいウィンドウを作成できる場合は、新しいウィンドウのQWebEnginePage が返され、そうでない場合は null ポインタが返されます。

ウェブ・ページに関連付けられたビューがQWebEngineView オブジェクトの場合、デフォルトの実装ではリクエストをQWebEngineView::createWindow() に転送します。

この呼び出しが実装されていないか、新しいページを返さない場合、newWindowRequested()がリクエストを処理するために発行される。

注意: JavaScriptによってウィンドウの作成がトリガーされる場合、このメソッドを再実装する以外に、アプリケーションは、このメソッドが呼び出されるように、QWebEngineSettings::JavascriptCanOpenWindowstrue に設定する必要があります。

QWebEngineView::createWindow() とnewWindowRequested()も参照してください

[signal, since 6.7] void QWebEnginePage::desktopMediaRequested(const QWebEngineDesktopMediaRequest &request)

このシグナルは、Webアプリケーションがディスプレイのコンテンツへのアクセスを要求したときに発行される。

引数request は、キャプチャ可能なウィンドウとスクリーンのデータモデルへの参照を保持します。要求を受け入れるために、シグナルハンドラはQWebEngineDesktopMediaRequest::selectScreen() またはQWebEngineDesktopMediaRequest::selectWindow() を呼び出します。

この関数はQt 6.7で導入されました。

[since 6.6] QString QWebEnginePage::devToolsId() const

このページに関連付けられた開発者ツールホストの ID を返します。

リモートデバッグが有効になっている場合 (Qt WebEngine Developer Tools を参照)、この id を使って開発者ツールのウェブソケットに接続するための URL を作成することができます:ws://localhost:<debugggin-port>/devtools/page/<id>) 。ウェブソケットは、DevTools プロトコルを使用してページと対話するために使用できます。

この関数は Qt 6.6 で導入されました。

QWebEnginePage *QWebEnginePage::devToolsPage() const

このページの開発者ツールをホストしているページがあれば、それを返します。

開発者ツールページが設定されていない場合はnullptr を返します。

setDevToolsPage() およびinspectedPage()も参照 ください。

void QWebEnginePage::download(const QUrl &url, const QString &filename = QString())

url で指定された場所からリソースをローカルファイルにダウンロードする。

filename が指定された場合、それが推奨ファイル名として使用される。それが相対的な場合、ファイルは与えられた名前で標準のダウンロード場所に保存されます。NULLまたは空のQString の場合、デフォルトのファイル名が使用される。

これは、ダウンロード開始後にQWebEngineProfile::downloadRequested() を発行する。

[override virtual] bool QWebEnginePage::event(QEvent *e)

再インプリメント:QObject::event(QEvent *e).

[signal, since 6.4] void QWebEnginePage::fileSystemAccessRequested(QWebEngineFileSystemAccessRequest request)

このシグナルは、ウェブ・ページがローカル・ファイルやディレクトリーへの アクセスを要求したときに発せられる。

リクエストオブジェクトrequest を使って、リクエストを許可または拒否することができます。

この関数は Qt 6.4 で導入されました。

[since 6.8] std::optional<QWebEngineFrame> QWebEnginePage::findFrameByName(QAnyStringView name)

与えられたname を持つフレームを返します。同じ名前のフレームが複数ある場合、どれを返すかは任意です。フレームが見つからなかった場合は、std::nullopt を返します。

この関数は Qt 6.8 で導入されました。

void QWebEnginePage::findText(const QString &subString, QWebEnginePage::FindFlags options = {}, const std::function<void (const QWebEngineFindTextResult &)> &resultCallback = std::function<void(const QWebEngineFindTextResult &)>())

ページ内で、指定された文字列subString を、指定されたoptions を用いて検索する。findTextFinished() シグナルは、文字列検索が完了したときに発行される。

検索ハイライトを消去するには、空の文字列を渡します。

resultCallbackQWebEngineFindTextResult パラメータを取らなければならない。

警告 コールバック(resultCallback)は常に呼び出されることを保証しますが、ページ破棄時に呼び出される可能性があります。QWebEnginePage が削除されると、コールバックは無効な値でトリガーされ、その中で対応するQWebEnginePageQWebEngineView インスタンスを使用することは安全ではありません。

例えば

    m_view->page()->findText(QStringLiteral("Qt"), QWebEnginePage::FindFlags(), [this](const QWebEngineFindTextResult &result) {
        if (result.numberOfMatches() == 0) QMessageBox::information(m_view, QString(), QStringLiteral("No occurrences found"));
    });

findTextFinished()も参照してください

[signal] void QWebEnginePage::findTextFinished(const QWebEngineFindTextResult &result)

このシグナルは、ページ上の文字列検索が完了したときに発せられる。result は文字列検索の結果である。

findText()も参照

[signal] void QWebEnginePage::fullScreenRequested(QWebEngineFullScreenRequest fullScreenRequest)

このシグナルは、ウェブページがウェブ要素(通常はビデオ要素)に対してフルスクリーンモードにするリクエストを発行したときに発せられます。

リクエストオブジェクトfullScreenRequest を使用して、リクエストを承認または拒否できます。

リクエストが受け入れられた場合、フルスクリーンを要求する要素はビューポートいっぱいに表示されますが、ビューをフルスクリーンにするか、ページをフルスクリーンのビューに移動するかはアプリケーション次第です。

QWebEngineSettings::FullScreenSupportEnabledも参照してください

[signal] void QWebEnginePage::geometryChangeRequested(const QRect &geom)

このシグナルは、ドキュメントがページの位置とサイズをgeom に変更したいときに発行される。

注意: setGeometry() はウィンドウの装飾を除いたサイズを期待しますが、geom はそれを含みます。このシグナルを正しく処理するには、geom からフレームの余白のサイズを削除する必要があります。

window->setGeometry(geom.marginsRemoved(window->frameMargins()));

QWebEngineHistory *QWebEnginePage::history() const

閲覧履歴へのポインタを返します。

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

このシグナルは、ページに関連付けられたアイコン("favicon")が変更されたときに発せられる。新しいアイコンはicon で指定されます。

注: icon プロパティのノーティファイアシグナル。

icon(),iconUrl(),iconUrlChanged()も参照

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

このシグナルは、ページに関連付けられたアイコン("favicon")のURLが変更されたときに発行される。新しいURLはurl で指定されます。

注: iconUrl プロパティに対するノーティファイアシグナル。

iconUrl(),icon(),iconChanged()も参照

QWebEnginePage *QWebEnginePage::inspectedPage() const

このページが検査しているページがあれば、それを返します。

このページが開発者ツールページでない場合はnullptr を返します。

setInspectedPage() およびdevToolsPage()も参照

[virtual protected] void QWebEnginePage::javaScriptAlert(const QUrl &securityOrigin, const QString &msg)

この関数は、securityOrigin のフレームで実行されている JavaScript プログラムが、msg というメッセージとともにalert() 関数を呼び出すたびに呼び出されます。

デフォルトの実装では、メッセージmsgQMessageBox::information で表示します。

[virtual protected] bool QWebEnginePage::javaScriptConfirm(const QUrl &securityOrigin, const QString &msg)

この関数は、securityOrigin のフレームで実行されている JavaScript プログラムが、msg というメッセージとともにconfirm() 関数を呼び出すたびに呼び出されます。ユーザーがメッセージを確認した場合はtrue を返し、そうでない場合はfalse を返します。

また、onbeforeunload ハンドラがページを離れる前に確認を要求するときにも呼び出されます。

デフォルトの実装では、QMessageBox::OkQMessageBox::Cancel ボタンを使って、QMessageBox::information を使ってクエリを実行します。

[virtual protected] void QWebEnginePage::javaScriptConsoleMessage(QWebEnginePage::JavaScriptConsoleMessageLevel level, const QString &message, int lineNumber, const QString &sourceID)

この関数は、JavaScriptプログラムがウェブ・ブラウザのコンソールにmessage

例えば、評価エラーの場合、sourceID にソースURLが提供され、lineNumber.

level は、メッセージをトリガーしたイベントの重大度を示します。つまり、エラーでトリガーされたのか、それほど深刻でないイベントでトリガーされたのかを示します。

Qt 5.6以降、デフォルトの実装では、メッセージはjs logging category に記録されます。

コンソールログも参照してください

[virtual protected] bool QWebEnginePage::javaScriptPrompt(const QUrl &securityOrigin, const QString &msg, const QString &defaultValue, QString *result)

この関数は、securityOrigin のフレームで実行されている JavaScript プログラムが、ユーザーに入力を促そうとするたびに呼び出されます。プログラムは、defaultValue の入力のデフォルト値と同様に、オプションのメッセージmsg を提供することができる。

プロンプトがユーザーによってキャンセルされた場合、実装はfalse を返すべきである。そうでない場合、結果はresult に書き込まれ、true が返されるべきである。プロンプトがユーザーによってキャンセルされなかった場合、実装はtrue を返すべきである。

デフォルトの実装ではQInputDialog::getText() を使用する。

[signal] void QWebEnginePage::linkHovered(const QString &url)

このシグナルは、マウスがリンクの上に乗ったときに発せられる。url にはリンクのターゲットURLが含まれる。

void QWebEnginePage::load(const QUrl &url)

url をこのページにロードする。

注: 新しいURLを表示するのに十分なデータが到着するまで、表示は同じままである。

setUrl()、setHtml()、setContent()も参照の こと。

void QWebEnginePage::load(const QWebEngineHttpRequest &request)

指定されたrequest を発行し、応答をロードする。

load()、setUrl()、url()、urlChanged()、QUrl::fromUserInput()も参照のこと

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

このシグナルは、ページがコンテンツの読み込みを終了したときに発行される。このシグナルは、スクリプトの実行やページのレンダリングとは無関係です。ok は、ロードが成功したか、エラーが発生したかを示します。

注: ナビゲーション要求は、acceptNavigationRequest() 関数をオーバーロードすることで、HTML ハンドラエンジンに処理させる代わりに Qt アプリケーションに委譲することができます。読み込み処理は開始され、loadStarted() シグナルはリクエストが受諾されるか拒否される前に発行されるため、false を返すloadFinished() シグナルは、リクエストを委譲した後でも期待されます。

loadStarted() およびacceptNavigationRequest()も参照のこと

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

このシグナルは、グローバル進捗ステータスが変化したときに発せられる。現在の値はprogress によって提供され、0 から 100 の範囲でスケーリングされます。これはQProgressBar のデフォルト範囲です。 このシグナルは、すべての子フレームからの変更を累積します。

[signal] void QWebEnginePage::loadStarted()

このシグナルは、ページがコンテンツの読み込みを開始したときに発せられる。

loadFinished() およびacceptNavigationRequest()も参照

[signal, since 6.2] void QWebEnginePage::loadingChanged(const QWebEngineLoadingInfo &loadingInfo)

このシグナルは、loadingInfo で指定されたページのロードが開始、終了、または失敗したときに発行される。

注: プロパティloading のノーティファイアシグナル。

この関数は Qt 6.2 で導入されました。

[since 6.8] QWebEngineFrame QWebEnginePage::mainFrame()

ページのメインとなる最上位のフレーム。このページの他のすべてのフレームは、メインフレームの子としてアクセスできます。

この関数は Qt 6.8 で導入されました。

このシグナルは、acceptNavigationRequest()の呼び出しとともにナビゲーション時に発せられる。requestデフォルトはacceptです。

この関数は Qt 6.2 で導入されました。

acceptNavigationRequest()も参照してください

[signal, since 6.2] void QWebEnginePage::newWindowRequested(QWebEngineNewWindowRequest &request)

このシグナルは、request が発行され、ウェブエンジンの別ウィンドウにページがロードされたときに発行されます。これは、現在のページがJavaScriptのwindow.open への呼び出しによって明示的に要求したためか、ユーザーがShift、Ctrl、または新しいウィンドウでページを開くトリガーとなる組み込みの組み合わせを押しながらリンクをクリックしたためです。

このシグナルは、リクエストの新しいページでopenIn()を呼び出すことで処理される。このシグナルが処理されない場合、リクエストされたロードは失敗します。

注意: createWindow() が最初にリクエストを処理した場合、このシグナルは発行されません。

この関数は Qt 6.2 で導入されました。

createWindow() およびQWebEngineNewWindowRequest::openIn()も参照してください

[signal] void QWebEnginePage::pdfPrintingFinished(const QString &filePath, bool success)

このシグナルは、ウェブページのPDFファイルへの印刷が終了したときに発せられます。filePath には、ファイルの作成が要求されたパスが格納され、success には、ファイルの作成に成功した場合はtrue が、そうでない場合はfalse が格納されます。

printToPdf()も参照

[signal, since 6.8] void QWebEnginePage::permissionRequested(QWebEnginePermission permission)

このシグナルは、ウェブサイトがある機能(例:ジオロケーションアクセス、通知の送信許可)の利用を要求したときに発行されます。permission オブジェクトは、要求している URL とQWebEnginePermission::Feature を照会し、許可を与えるか拒否するかを決定します。

この関数は Qt 6.8 で導入されました。

[signal] void QWebEnginePage::printRequested()

このシグナルは、JavaScriptのwindow.print() メソッドがメインフレーム上で呼び出されたとき、またはユーザーがPDFビューアープラグインの印刷ボタンを押したときに発せられます。通常、シグナルハンドラは単純にprintToPdf() を呼び出すことができます。

6.8以降、このシグナルは、印刷を要求するどのフレームに対しても発せられるのではなく、メインフレームに対してのみ発せられるようになりました。

printToPdf() およびprintRequestedByFrame()も参照して ください。

[signal, since 6.8] void QWebEnginePage::printRequestedByFrame(QWebEngineFrame frame)

このシグナルは、JavaScriptのwindow.print() メソッドがframe で呼び出されたときに発せられる。フレームがメインフレームの場合、代わりにprintRequested が発行されます。

この関数は Qt 6.8 で導入されました。

printRequested(),printToPdf(),QWebEngineFrame::printToPdf()も参照してください

void QWebEnginePage::printToPdf(const QString &filePath, const QPageLayout &layout = QPageLayout(QPageSize(QPageSize::A4), QPageLayout::Portrait, QMarginsF()), const QPageRanges &ranges = {})

ページのカ レ ン ト 内容を PDF 文書に レ ン ダ リ ング し 、filePath で指定 さ れてい る場所に保存 し ます。生成 さ れ る PDF 文書のページサ イ ズ と 向 き は、layout で指定 さ れてい る 値か ら 取得 さ れ、 印字 さ れ る ページ の範囲はranges か ら 取得 さ れます。

こ の メ ソ ッ ド は、 Web ページ を PDF へ印刷す る ための非同期要求を発行 し 、 ただちに返 り ます。リ ク エ ス ト の結果を知 る には、 シグナルpdfPrintingFinished() に接続 し ます。

メモ : QWebEnginePage::Stop Web ア ク シ ョ ン を使えば、 こ の非同期操作を中断す る こ と がで き ます。

与え ら れた フ ァ イ ルパ ス に フ ァ イ ルがすでに存在 し てい る と き は、 その フ ァ イ ルは上書 き さ れます。

pdfPrintingFinished()も参照

void QWebEnginePage::printToPdf(const std::function<void (const QByteArray &)> &resultCallback, const QPageLayout &layout = QPageLayout(QPageSize(QPageSize::A4), QPageLayout::Portrait, QMarginsF()), const QPageRanges &ranges = {})

resultCallback生成 さ れ る PDF 文書のページサ イ ズ と 向 き はlayout で指定 さ れてい る 値か ら 採 ら れ、 印字 さ れ る ページ の範囲はranges か ら 採 ら れます。

resultCallback は、QByteArray への const 参照を引数 と し て取 る 必要があ り ます。印刷が成功 し た と き は、 こ のバ イ ト 配列は PDF デー タ を含んでお り 、 そ う でない と き はバ イ ト 配列は空にな り ます。

注: QWebEnginePage::Stop Web アクションを使うと、この操作を中断することができます。

警告 コ ールバ ッ ク (resultCallback ) はつねに呼び出 さ れ る こ と を保証 し ますが、 ページ破棄中に呼び出される可能性があ り ます。QWebEnginePage が削除されると、コールバックは無効な値でトリガーされ、その内部で対応するQWebEnginePageQWebEngineView インスタンスを使用することは安全ではありません。

QWebEngineProfile *QWebEnginePage::profile() const

ページが属するウェブエンジンプロファイルを返します。

[signal] void QWebEnginePage::proxyAuthenticationRequired(const QUrl &requestUrl, QAuthenticator *authenticator, const QString &proxyHost)

このシグナルは、proxyHost を経由してrequestUrl にアクセスする際に、プロキシの認証が必要な場合に発行される。authenticator を使用して、接続用のユーザー名とパスワードを渡す必要がある。

[signal] void QWebEnginePage::recentlyAudibleChanged(bool recentlyAudible)

このシグナルは、ページの可聴状態(recentlyAudible )が変化したときに発行される。

注: このシグナルは、setAudioMuted() メソッドを呼び出したときにも発せられます。

注: プロパティrecentlyAudible のノーティファイア・シグナル。

[signal] void QWebEnginePage::registerProtocolHandlerRequested(QWebEngineRegisterProtocolHandlerRequest request)

このシグナルは、ウェブページがregisterProtocolHandlerAPIを使ってカスタムプロトコルを登録しようとしたときに発せられる。

リクエストオブジェクトrequest を使って、リクエストを受け入れるか拒否するかを指定できます:

void WebView::handleRegisterProtocolHandlerRequested(
        QWebEngineRegisterProtocolHandlerRequest request)
{
    auto answer = QMessageBox::question(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();
}

[signal] void QWebEnginePage::renderProcessPidChanged(qint64 pid)

このシグナルは、基礎となるレンダリングプロセスのPIDpid が変更されたときに発行される。

注: プロパティrenderProcessPid に対するノーティファイアシグナル。

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

このシグナルは、レンダリングプロセスがゼロ以外の終了ステータスで終了したときに発せられます。terminationStatus はプロセスの終了ステータスで、exitCode はプロセスが終了したステータスコードです。

void QWebEnginePage::replaceMisspelledWord(const QString &replacement)

現在スペルミスのある単語をreplacement で置き換える。

現在スペルミスのある単語はQWebEngineContextMenuRequest::misspelledWord() に、置換候補はQWebEngineContextMenuRequest::spellCheckerSuggestions() にある。

void QWebEnginePage::save(const QString &filePath, QWebEngineDownloadRequest::SavePageFormat format = QWebEngineDownloadRequest::MimeHtmlSaveFormat) const

現在ロードされているウェブページをディスクに保存する。

ウェブページは指定されたformatfilePath に保存されます。

これは以下のアクションのショートカットです:

  • Web 保存アクションをトリガーします。
  • 次のダウンロード項目を受け入れ、指定されたファイルパスと 保存形式を設定します。

この関数はウェブページの非同期ダウンロード要求を発行し、すぐに戻ります。

QWebEngineDownloadRequest::SavePageFormatも参照してください

QWebEngineScriptCollection &QWebEnginePage::scripts()

ページに注入されたスクリプトのコレクションを返します。

さらに、ページはQWebEngineProfile::scripts() を通して追加されたスクリプトも実行するかもしれません。

QWebEngineScriptCollectionQWebEngineScript 、およびスクリプト・インジェクションも参照してください

[signal] void QWebEnginePage::selectClientCertificate(QWebEngineClientCertificateSelection clientCertificateSelection)

このシグナルは、ウェブサイトがSSLクライアント証明書を要求し、システムのクライアント証明書ストアに1つ以上の証明書が見つかったときに発行されます。

このシグナルの処理は非同期で、ローディングは証明書が選択されるか、clientCertificateSelection の最後のコピーが破棄されるまで待たされます。

シグナルが処理されない場合、clientCertificateSelection は自動的に破棄され、ロードはクライアント証明書なしで続行される。

QWebEngineClientCertificateSelectionも参照のこと

[signal] void QWebEnginePage::selectionChanged()

このシグナルは、対話的またはプログラム的に選択範囲が変更されるたびに発行されます。例えば、選択アクションでtriggerAction() を呼び出した場合などです。

注意: マウスでテキストを左クリックしてドラッグして選択する場合、このシグナルはマウスの左ボタンを離したときではなく、新しい文字が選択されるたびに発行されます。

selectedText()も参照

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

ウェブページのコンテンツをdata に設定します。引数mimeType が空の場合、コンテンツはtext/plain,charset=US-ASCII であるとみなされます。

コンテンツで参照される外部オブジェクトは、baseUrl からの相対位置にあります。相対 URL を持つ外部オブジェクトを読み込むには、baseUrl を空にすることはできません。

data 外部オブジェクトは非同期にロードされます。

注意: このメソッドは、そのページのセッション履歴やグローバル履歴には影響しません。

警告 コンテンツは、IPC経由でレンダラーに送信される前にパーセントエンコードされます。そのため、サイズが大きくなる可能性があります。パーセントエンコードされたコンテンツの最大サイズは、2メガバイトから6バイトを引いたものと、MIMEタイプ文字列の長さです。

toHtml() およびsetHtml()も参照の こと。

void QWebEnginePage::setDevToolsPage(QWebEnginePage *devToolsPage)

devToolsPage をこのページの開発者ツールにバインドする。devToolsPage をトリガーとして、開発者ツールで内部 URL に移動する。

これは、this を引数としてdevToolsPagesetInspectedPage() を呼び出すのと同じである。

devToolsPage() およびsetInspectedPage()も参照

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

このページのコンテンツをhtml に設定する。baseUrl はオプションで、参照される画像やスタイルシートなど、ドキュメント内の相対 URL を解決するために使われる。

html は即座に読み込まれます。外部オブジェクトは非同期に読み込まれます。

html のスクリプトが、モーダルな JavaScript アラートダイアログによってブロックされるなどして、デフォルトのスクリプトタイムアウト (現在は 10 秒) よりも長く実行された場合、このメソッドはタイムアウト後できるだけ早く戻り、後続のhtml はすべて非同期で読み込まれます。

このメソッドを使用する場合、ウェブエンジンは JavaScript プログラムやスタイルシートなどの外部リソースが、特に指定されない限り UTF-8 でエンコードされていると仮定します。例えば、外部スクリプトのエンコーディングは、HTMLのscriptタグのcharset属性で指定できます。また、ウェブ・サーバーがエンコーディングを指定することもできます。

これはsetContent(html, "text/html", baseUrl) と同等の便利な関数です。

注意: このメソッドは、そのページのセッション履歴やグローバル履歴には影響しません。

警告 この関数は HTML に対してのみ動作します。他の MIME タイプ(XHTML や SVG など)の場合は、代わりにsetContent() を使用する必要があります。

警告 コンテンツは、IPC経由でレンダラーに送られる前にパーセントエンコードされます。そのため、サイズが大きくなる可能性がある。パーセント符号化されたコンテンツの最大サイズは、2メガバイトから30バイトを引いたものである。

toHtml()、setContent()、load()も参照のこと

void QWebEnginePage::setInspectedPage(QWebEnginePage *page)

このページを、page の開発者ツールである内部URLにナビゲートする。

これは、pagethis を引数としてsetDevToolsPage() を呼び出すのと同じである。

inspectedPage() およびsetDevToolsPage()も参照のこと

void QWebEnginePage::setUrlRequestInterceptor(QWebEngineUrlRequestInterceptor *interceptor)

URL リクエストをインターセプトするために、リクエストインターセプ ターinterceptor を登録する。

ページはポインタの所有権を持ちません。このインターセプターはプロファイルのインターセプターの後に呼ばれ、プロファイルのインターセプターとは異なり、このページからの URL リクエストのみがインターセプトされます。元のリクエストがすでにプロファイルインターセプターによってブロックされたりリダイレクトされたりしている場合は、このインターセプターによってインターセプトされることはありません。

リクエストインターセプターの設定を解除するには、nullptr を設定してください。

QWebEngineUrlRequestInfoQWebEngineProfile::setUrlRequestInterceptor()も参照してください

void QWebEnginePage::setWebChannel(QWebChannel *channel, quint32 worldId = 0)

このページが使用するウェブチャネルのインスタンスをchannel に設定し、Chromium IPC メッセージを使用してウェブエンジンのトランスポートに接続します。トランスポートは JavaScript の世界worldIdqt.webChannelTransport として公開されており、Qt WebChannel JavaScript API を使用するときに使用します。

注意: ページはチャネルオブジェクトの所有権を持ちません。

注意: ページごとにインストールできるウェブチャネルは1つだけで、別の JavaScript の世界でも設定すると、すでにインストールされているウェブチャネルはアンインストールされます。

webChannel() およびQWebEngineScript::ScriptWorldIdも参照して ください。

QWebEngineSettings *QWebEnginePage::settings() const

ページの設定オブジェクトへのポインタを返します。

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

このシグナルはページのタイトルが変更されるたびに発せられる。title 、新しいタイトルを指定する。

注: title プロパティのノーティファイア・シグナル。

title()も参照してください

void QWebEnginePage::toHtml(const std::function<void (const QString &)> &resultCallback) const

HTMLタグとBODYタグで囲まれたページの内容をHTMLとして取得する非同期メソッド。成功すると、ページのコンテンツとともにresultCallback

注: resultCallback は関数ポインタ、ファンクタ、ラムダのいずれでもよく、QString パラメータを取ることが期待される。

警告 コールバック(resultCallback)は常に呼び出されることを保証しますが、ページの破棄時に呼び出される可能性があります。QWebEnginePage が削除されると、コールバックは無効な値でトリガーされ、その内部で対応するQWebEnginePageQWebEngineView インスタンスを使用することは安全ではありません。

setHtml() およびtoPlainText()も参照してください

void QWebEnginePage::toPlainText(const std::function<void (const QString &)> &resultCallback) const

HTMLの書式をすべて取り除いたプレーンテキストに変換されたページの内容を取得する非同期メソッド。成功すると、resultCallback がページの内容とともに呼び出される。

注: resultCallback は関数ポインタ、ファンクタ、ラムダのいずれでもよく、QString パラメータを取ることが期待される。

警告 コールバック(resultCallback)は常に呼び出されることを保証しますが、ページの破棄時に呼び出される可能性があります。QWebEnginePage が削除されると、コールバックは無効な値で起動され、その内部で対応するQWebEnginePageQWebEngineView インスタンスを使用することは安全ではありません。

toHtml()も参照してください

[virtual] void QWebEnginePage::triggerAction(QWebEnginePage::WebAction action, bool checked = false)

この関数は、指定されたaction 。また、ユーザーがコンテキストメニュー項目などでアクションをトリガーした場合にも、Qt WebEngine によって呼び出される。

action がチェック可能なアクションの場合、checked はアクションがトグルされるかどうかを指定します。

action()も参照してください

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

このシグナルは、ページタイトルを受け取ったときに、ページのURLとともに発せられる。新しいURLはurl で指定される。

注: url プロパティのノーティファイア・シグナル。

url()も参照

[signal, since 6.7] void QWebEnginePage::webAuthUxRequested(QWebEngineWebAuthUxRequest *request)

このシグナルは、WebAuth 認証モジュールが認証処理中にユーザの操作を必要とする場合に発行されます。これらのリクエストは、ユーザーにダイアログを表示することで処理されます。

request には、WebAuth UX リクエストを完了するために必要な情報と API が含まれています。

この関数は Qt 6.7 で導入されました。

QWebEngineWebAuthUxRequestも参照して ください。

QWebChannel *QWebEnginePage::webChannel() const

このページが使用するウェブチャネルのインスタンスへのポインタ、または何も設定されていない場合は null ポインタを返します。このチャネルは、Chromium IPC を介したウェブエンジン内部のトランスポート機構を自動的に使用します。この機構は、このページの JavaScript コンテキストでqt.webChannelTransport として公開されています。

setWebChannel()も参照

[signal] void QWebEnginePage::windowCloseRequested()

このシグナルは、JavaScriptのwindow.close() 呼び出しなどで、ページがウェブブラウザのウィンドウを閉じるよう要求するたびに発せられる。

RequestCloseも参照してください

[signal, since 6.8] void QWebEnginePage::zoomFactorChanged(qreal factor)

このシグナルは、ページのズームfactor が変更されるたびに発行される。

注意: zoomFactor プロパティの通知シグナルです。

この関数は Qt 6.8 で導入されました。

zoomFactor() およびsetZoomFactor()も参照してください

© 2025 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.