QWebEngineDownloadRequest Class
QWebEngineDownloadRequest クラスは、ダウンロードに関する情報を提供します。詳細...
ヘッダー | #include <QWebEngineDownloadRequest> |
CMake: | find_package(Qt6 REQUIRED COMPONENTS WebEngineCore) target_link_libraries(mytarget PRIVATE Qt6::WebEngineCore) |
qmake | QT += webenginecore |
QML で | WebEngineDownloadRequest |
継承: | QObject |
パブリックな型
enum | DownloadInterruptReason { NoReason, FileFailed, FileAccessDenied, FileNoSpace, FileNameTooLong, …, UserCanceled } |
enum | DownloadState { DownloadRequested, DownloadInProgress, DownloadCompleted, DownloadCancelled, DownloadInterrupted } |
enum | SavePageFormat { UnknownSaveFormat, SingleHtmlSaveFormat, CompleteHtmlSaveFormat, MimeHtmlSaveFormat } |
プロパティ
- isFinished : const bool
- isPaused : const bool
パブリック機能
QString | downloadDirectory() const |
QString | downloadFileName() const |
quint32 | id() const |
QWebEngineDownloadRequest::DownloadInterruptReason | interruptReason() const |
QString | interruptReasonString() const |
bool | isFinished() const |
bool | isPaused() const |
bool | isSavePageDownload() const |
QString | mimeType() const |
QWebEnginePage * | page() const |
qint64 | receivedBytes() const |
QWebEngineDownloadRequest::SavePageFormat | savePageFormat() const |
void | setDownloadDirectory(const QString &directory) |
void | setDownloadFileName(const QString &fileName) |
void | setSavePageFormat(QWebEngineDownloadRequest::SavePageFormat format) |
QWebEngineDownloadRequest::DownloadState | state() const |
QString | suggestedFileName() const |
qint64 | totalBytes() const |
QUrl | url() const |
パブリックスロット
シグナル
void | downloadDirectoryChanged() |
void | downloadFileNameChanged() |
void | interruptReasonChanged() |
void | isFinishedChanged() |
void | isPausedChanged() |
void | receivedBytesChanged() |
void | savePageFormatChanged() |
void | stateChanged(QWebEngineDownloadRequest::DownloadState state) |
void | totalBytesChanged() |
詳細説明
QWebEngineDownloadRequest は、保留中のダウンロード要求から始まり、完了したダウンロードで終わる、ライフサイクル全体のダウンロードをモデル化します。たとえば、新しいダウンロードに関する情報の取得、進行状況の監視、ダウンロードの一時停止、再開、キャンセルなどに使用できます。
ダウンロードは通常、ウェブページ上でのユーザーの操作によって開始されます。新しいダウンロード要求をアプリケーションに通知するのは、QWebEngineProfile の責任です。downloadRequested シグナルを、新しく作成された QWebEngineDownloadRequest とともに発信します。アプリケーションはこのアイテムを調べ、受け入れるかどうかを決定します。Qt WebEngine が実際にデータのダウンロードとディスクへの書き込みを開始するためには、シグナル・ハンドラがアイテムに対してaccept() を明示的に呼び出す必要があります。シグナル・ハンドラがaccept ()を呼び出さない場合、ダウンロード要求は自動的に拒否され、ディスクには何も書き込まれません。
注意: ファイルが保存されるパスやファイル名の設定(downloadDirectory() およびdownloadFileName() を参照)など、一部のプロパティは、accept() を呼び出す前にしか変更できません。
オブジェクトのライフサイクル
すべての項目は、downloadRequested シグナルが発せられる間、有効であることが保証される。どのシグナル・ハンドラからもaccept() が呼び出されなかった場合、そのアイテムはシグナルの 発生直後に削除されます。つまり、アプリケーションは、拒否されたダウンロード・アイテムの参照を保持してはならない。また、アプリケーションは、このシグナルへのキュー接続を使用してはならない。
accept()がシグナル・ハンドラによって呼び出された場合、QWebEngineProfile はアイテムの所有権を取得します。しかし、downloadRequested シグナルの処理中以外であれば、アプリケーションはいつでもアイテムを削除しても安全である。QWebEngineProfile は長寿命のオブジェクトであるため、アプリケーションは不要になったアイテムを削除することを推奨します。
注: アイテムを削除すると、5.12.2以降、ダウンロードも自動的にキャンセルされますが、ポータビリティのために、削除する前に手動でキャンセルすることをお勧めします。
ウェブページのダウンロード
ネットワークから生のバイトを取得してディスクに書き込むだけの通常のファイルダウンロードに加え、Qt WebEngine は完全なウェブページの保存もサポートしています。この場合、ページの HTML を解析し、依存するリソースをダウンロードし、すべてを特別なファイル形式 (savePageFormat) にパッケージ化する可能性があります。ダウンロードの対象がファイルかウェブページかを確認するには、isSavePageDownload を使用します。
QWebEngineProfile 、QWebEngineProfile::downloadRequested 、QWebEnginePage::download 、QWebEnginePage::saveも参照のこと 。
メンバー・タイプ・ドキュメント
enum QWebEngineDownloadRequest::DownloadInterruptReason
ダウンロードが中断された理由を説明します:
定数 | 値 | 説明 |
---|---|---|
QWebEngineDownloadRequest::NoReason | 0 | 理由不明、または中断されていない。 |
QWebEngineDownloadRequest::FileFailed | 1 | 一般的なファイル操作の失敗。 |
QWebEngineDownloadRequest::FileAccessDenied | 2 | アクセス制限のため、ファイルをローカルに書き込めません。 |
QWebEngineDownloadRequest::FileNoSpace | 3 | ターゲット・ドライブの空き容量不足。 |
QWebEngineDownloadRequest::FileNameTooLong | 5 | ディレクトリ名またはファイル名が長すぎる。 |
QWebEngineDownloadRequest::FileTooLarge | 6 | ファイル・サイズがファイル・システムの制限を超えている。 |
QWebEngineDownloadRequest::FileVirusInfected | 7 | ファイルがウイルスに感染している。 |
QWebEngineDownloadRequest::FileTransientError | 10 | 一時的な問題(ファイルが使用中、メモリ不足、一度に開くファイルが多すぎるなど)。 |
QWebEngineDownloadRequest::FileBlocked | 11 | ローカルポリシーによりファイルがブロックされた。 |
QWebEngineDownloadRequest::FileSecurityCheckFailed | 12 | ダウンロードの安全性を確認しようとしましたが、予期せぬ理由で失敗しました。 |
QWebEngineDownloadRequest::FileTooShort | 13 | ファイルを開くときに、(以前に中断されたダウンロードを再開する一環として)ファイルの終端を超えてシークしようとしました。 |
QWebEngineDownloadRequest::FileHashMismatch | 14 | 部分ファイルが予想されたハッシュと一致しませんでした。 |
QWebEngineDownloadRequest::NetworkFailed | 20 | 一般的なネットワーク障害。 |
QWebEngineDownloadRequest::NetworkTimeout | 21 | ネットワーク操作がタイムアウトしました。 |
QWebEngineDownloadRequest::NetworkDisconnected | 22 | ネットワーク接続が終了しました。 |
QWebEngineDownloadRequest::NetworkServerDown | 23 | サーバーがダウンしました。 |
QWebEngineDownloadRequest::NetworkInvalidRequest | 24 | ネットワーク要求が無効でした(たとえば、元の URL またはリダイレクトされた URL が無効、サポートされていないスキーム、またはポリシーで許可されていない)。 |
QWebEngineDownloadRequest::ServerFailed | 30 | 一般的なサーバー障害。 |
QWebEngineDownloadRequest::ServerBadContent | 33 | サーバーに要求されたデータがない。 |
QWebEngineDownloadRequest::ServerUnauthorized | 34 | サーバーがリソースへのアクセスを許可しませんでした。 |
QWebEngineDownloadRequest::ServerCertProblem | 35 | サーバー証明書に問題が発生しました。 |
QWebEngineDownloadRequest::ServerForbidden | 36 | サーバーによってアクセスが禁止された。 |
QWebEngineDownloadRequest::ServerUnreachable | 37 | 予期しないサーバー応答(応答したサーバーが意図したサーバーでない可能性があることを示す)。 |
QWebEngineDownloadRequest::UserCanceled | 40 | ユーザーがダウンロードをキャンセルした。 |
enum QWebEngineDownloadRequest::DownloadState
この列挙型は、ダウンロードの状態を記述する:
定数 | 値 | 説明 |
---|---|---|
QWebEngineDownloadRequest::DownloadRequested | 0 | ダウンロードが要求されたが、まだ受け入れられていない。 |
QWebEngineDownloadRequest::DownloadInProgress | 1 | ダウンロードは進行中です。 |
QWebEngineDownloadRequest::DownloadCompleted | 2 | ダウンロードは正常に完了しました。 |
QWebEngineDownloadRequest::DownloadCancelled | 3 | ダウンロードがキャンセルされました。 |
QWebEngineDownloadRequest::DownloadInterrupted | 4 | ダウンロードが中断されました(サーバーによって、または接続が失われたため)。 |
enum QWebEngineDownloadRequest::SavePageFormat
この列挙型は、ウェブページを保存するために使用されるフォーマットを記述します。
定数 | 値 | 説明 |
---|---|---|
QWebEngineDownloadRequest::UnknownSaveFormat | -1 | これは完全なウェブページのダウンロード要求ではありません。 |
QWebEngineDownloadRequest::SingleHtmlSaveFormat | 0 | ページは単一のHTMLページとして保存されます。画像のようなリソースは保存されません。 |
QWebEngineDownloadRequest::CompleteHtmlSaveFormat | 1 | ページは完全なHTMLページとして保存され、例えば、単一のHTMLページとリソースを含むディレクトリとして保存されます。 |
QWebEngineDownloadRequest::MimeHtmlSaveFormat | 2 | ページは、MIME HTML形式の完全なWebページとして保存されます。 |
プロパティ・ドキュメンテーション
[read-only]
isFinished : const bool
このプロパティは、このダウンロードが終了(完了、キャンセル、または再開不可能な中断状態)したかどうかを保持する。
アクセス関数
bool | isFinished() const |
通知シグナル:
void | isFinishedChanged() |
state()も参照 。
[read-only]
isPaused : const bool
このプロパティは、このダウンロードが一時停止されているかどうかを保持する。
アクセス関数
bool | isPaused() const |
Notifier シグナル:
void | isPausedChanged() |
メンバー関数ドキュメント
[slot]
void QWebEngineDownloadRequest::accept()
現在のダウンロード要求を受け入れ、ダウンロードを開始する。
アイテムがDownloadRequested 状態の場合、DownloadInProgress 状態に遷移し、ダウンロードが開始されます。アイテムが他の状態にある場合は、何も起こりません。
isFinished およびstateChanged()も参照してください 。
[slot]
void QWebEngineDownloadRequest::cancel()
現在のダウンロードをキャンセルします。
アイテムがDownloadInProgress の状態にある場合、DownloadCancelled の状態に移行し、ダウンロードが停止し、部分的にダウンロードされたファイルがディスクから削除されます。
アイテムがDownloadCompleted 状態の場合は、何も起こらない。アイテムが他の状態にある場合は、そのままDownloadCancelled の状態に移行する。
isFinished およびstateChanged()も参照のこと 。
QString QWebEngineDownloadRequest::downloadDirectory() const
ダウンロードディレクトリのパスを返す。
メモ: プロパティ downloadDirectory のゲッター関数。
setDownloadDirectory()も参照してください 。
QString QWebEngineDownloadRequest::downloadFileName() const
ダウンロード先のファイル名を返します。
注: downloadFileName プロパティのゲッター関数です。
setDownloadFileName()も参照してください 。
quint32 QWebEngineDownloadRequest::id() const
ダウンロードアイテムの ID を返します。
注: プロパティidのゲッター関数です。
QWebEngineDownloadRequest::DownloadInterruptReason QWebEngineDownloadRequest::interruptReason() const
ダウンロードが中断された理由を返します。
注: プロパティ interruptReason のゲッター関数です。
interruptReasonString()も参照してください 。
QString QWebEngineDownloadRequest::interruptReasonString() const
ダウンロードを中断した理由を、人間が読めるように記述して返す。
注: プロパティ interruptReasonString のゲッター関数です。
interruptReason()も参照してください 。
[signal]
void QWebEngineDownloadRequest::isPausedChanged()
このシグナルはisPaused が変更されるたびに発行される。
注意: isPaused プロパティのノーティファイアシグナル。
bool QWebEngineDownloadRequest::isSavePageDownload() const
Web ページを保存するためのダウンロード要求である場合、true
を返す。
注: プロパティ isSavePageDownload のゲッター関数。
savePageFormat() およびsetSavePageFormat()も参照して ください。
QString QWebEngineDownloadRequest::mimeType() const
ダウンロードの MIME タイプを返す。
注: プロパティ mimeType のゲッター関数です。
QWebEnginePage *QWebEngineDownloadRequest::page() const
ダウンロードが要求されたページを返す。ダウンロードがページ内のコンテンツによって引き起こされなかった場合は、nullptr
。
[slot]
void QWebEngineDownloadRequest::pause()
ダウンロードを一時停止する。
状態がDownloadInProgress でない場合は効果がない。状態を変更しない。
qint64 QWebEngineDownloadRequest::receivedBytes() const
これまでにダウンロードされたデータ量をバイト数で返します。
-1
はサイズが不明であることを意味する。
注: プロパティ receivedBytes のゲッター関数です。
[slot]
void QWebEngineDownloadRequest::resume()
現在のダウンロードが一時停止または中断された場合、それを再開する。
状態がDownloadInProgress またはDownloadInterrupted でない場合は、何の効果もない。状態を変更しない。
pause()、isPaused()、state()も参照 。
QWebEngineDownloadRequest::SavePageFormat QWebEngineDownloadRequest::savePageFormat() const
ウェブページのダウンロード要求である場合に、ウェブページが保存される形式を返します。
注意: プロパティ savePageFormat のゲッター関数です。
setSavePageFormat() およびisSavePageDownload()も参照 。
void QWebEngineDownloadRequest::setDownloadDirectory(const QString &directory)
ファイルをダウンロードするディレクトリ・パスをdirectory に設定する。
ダウンロード・ディレクトリ・パスは、ダウンロードが受理される前にQWebEngineProfile::downloadRequested() シグナルに応答してのみ設定できる。それ以降、この関数は、ダウンロード項目の状態には影響しません。
注: プロパティdownloadDirectory のセッター関数。
downloadDirectory()も参照 。
void QWebEngineDownloadRequest::setDownloadFileName(const QString &fileName)
ダウンロード先のファイル名としてfileName を設定する。
ダウンロードファイル名を設定できるのは、ダウンロードを受け付ける前のQWebEngineProfile::downloadRequested() シグナルに対する応答のみである。それ以降、この関数は、ダウンロード項目の状態には影響しません。
注: プロパティdownloadFileName のセッター関数。
downloadFileName()も参照 。
void QWebEngineDownloadRequest::setSavePageFormat(QWebEngineDownloadRequest::SavePageFormat format)
Web ページのダウンロード要求の場合、Web ページが保存されるformat を設定します。
注: プロパティsavePageFormat のセッター関数です。
savePageFormat() およびisSavePageDownload()も参照してください 。
QWebEngineDownloadRequest::DownloadState QWebEngineDownloadRequest::state() const
ダウンロードアイテムの現在の状態を返します。
注: プロパティ状態のゲッター関数です。
DownloadStateも参照してください 。
[signal]
void QWebEngineDownloadRequest::stateChanged(QWebEngineDownloadRequest::DownloadState state)
このシグナルは、ダウンロードのstate が変更されるたびに発行される。
注意: state プロパティのノーティファイアシグナル。
state() およびDownloadStateも参照してください 。
QString QWebEngineDownloadRequest::suggestedFileName() const
提案されたファイル名を返します。
注意: suggestedFileNameプロパティのゲッター関数です。
qint64 QWebEngineDownloadRequest::totalBytes() const
ダウンロードするデータの総量をバイト数で返す。
-1
はサイズが不明であることを意味します。
注: プロパティtotalBytesのゲッター関数です。
QUrl QWebEngineDownloadRequest::url() const
ダウンロード元のURLを返します。
注: プロパティ url のゲッター関数です。
© 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.