FileDialogRequest QML Type

ユーザーに(新規または既存の)ファイルやディレクトリを選択させるためのリクエスト。さらに...

Import Statement: import QtWebEngine
Since: QtWebEngine 1.4

プロパティ

方法

詳細説明

FileDialogRequest は、WebEngineView::fileDialogRequested シグナルの引数として渡されます。これは、入力要素によってファイルダイアログが要求されたときに生成されます。ファイルアップロードの状態を参照してください。

リクエストのaccepted プロパティは、リクエストをユーザーコードで処理するか、デフォルトのダイアログを表示するかを示します。accepted プロパティをtrue に設定した場合は、その後に必ずdialogAccept() またはdialogReject() を呼び出してください。

以下のコードでは、カスタムダイアログを使用してリクエストを処理しています:

WebEngineView {
    // ...
    onFileDialogRequested: function(request) {
        request.accepted = true;
        myDialog.request = request // keep the reference to the request
        myDialog.accept.connect(request.dialogAccept);
        myDialog.reject.connect(request.dialogReject);
        myDialog.visible = true;
    }
    // ...
}

プロパティの説明

accepted : bool

ファイルピッカーダイアログ要求がシグナルハンドラによって処理されたかどうかを示します。

WebEngineView::fileDialogRequested のシグナルハンドラが実行された後に、このプロパティがfalse である場合、デフォルトのファイルピッカーダイアログが表示されます。これを防ぐには、request.acceptedtrue に設定します。

デフォルトはfalse です。


acceptedMimeTypes : stringlist [read-only]

input要素で指定されたMIMEタイプのリスト。選択するファイルは、これらのタイプのファイルだけに制限する必要があります。


defaultFileName : string [read-only]

ダイアログで選択されるファイルのデフォルト名。


mode : enumeration [read-only]

ファイルダイアログのモード。

定数説明
FileDialogRequest.FileModeOpenユーザーが単一の既存ファイルを指定できるようにします。
FileDialogRequest.FileModeOpenMultiple複数の既存ファイルを指定できます。
FileDialogRequest.FileModeUploadFolderアップロードするフォルダを1つだけ指定できます。
FileDialogRequest.FileModeSave存在しないファイルを指定できます。既存のファイルが選択された場合、そのファイルが上書きされることをユーザーに通知する必要があります。

メソッドの説明

void dialogAccept(stringlist files)

この関数は、ユーザがfiles でダイアログを受け入れたときに呼び出される必要があります。


void dialogReject()

この関数は、ユーザがダイアログを受け入れなかったときに呼び出される必要があります。


© 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.