FileDialog QML Type

ファイルダイアログ。もっと見る...

Import Statement: import QtQuick.Dialogs
Since: Qt 6.2
Inherits:

Dialog

プロパティ

詳しい説明

FileDialog型はファイルダイアログのためのQML APIを提供します。

ファイルダイアログを表示するには、FileDialogのインスタンスを作成し、必要なプロパティを設定し、open ()を呼び出します。currentFolder プロパティは、ダイアログを開くフォルダを決定するために使用できます。selectedFile プロパティとselectedFiles プロパティは、ダイアログが開くときに選択されるファイルを決定するために使用でき、ユーザがダイアログ内でファイルを選択したときとダイアログが受け入れられたときにも更新されます。

import QtCore
import QtQuick
import QtQuick.Controls
import QtQuick.Dialogs

ApplicationWindow {
    width: 640
    height: 480
    visible: true

    header: ToolBar {
        Button {
            text: qsTr("Choose Image...")
            onClicked: fileDialog.open()
        }
    }

    Image {
        id: image
        anchors.fill: parent
        fillMode: Image.PreserveAspectFit
    }

    FileDialog {
        id: fileDialog
        currentFolder: StandardPaths.standardLocations(StandardPaths.PicturesLocation)[0]
        onAccepted: image.source = selectedFile
    }
}

利用可能性

ネイティブプラットフォームのファイルダイアログは、現在以下のプラットフォームで利用可能です:

  • アンドロイド
  • iOS
  • Linux (GTK+プラットフォームテーマで動作している場合)
  • macOS
  • Windows

Qt Quick Dialogsは、ネイティブ実装が利用できないプラットフォームでは、フォールバックとして 。Qt Quick

FolderDialog およびStandardPathsも参照して ください。

プロパティ Documentation

acceptLabel : string

このプロパティは、ダイアログを受け入れるボタンに表示されるラベルテキストを保持します。

空文字列に設定されると、基礎となるプラットフォームのデフォルトラベルが使用されます。デフォルトのラベルは、ダイアログがどのfileMode で使用されているかによって、通常Open またはSave です。

デフォルト値は空文字列です。

rejectLabelも参照


currentFolder : url

このプロパティは、ファイルが選択されるフォルダを保持します。ダイアログを開いたときに表示される初期ディレクトリを制御するために設定することができます。

フォルダの選択には、代わりにFolderDialog を使用する。


defaultSuffix : string

このプロパティは、接尾辞が指定されていない選択されたファイルに追加される接尾辞を保持します。接尾辞は通常、ファイルタイプを示すために使用されます(例えば、"txt "はテキストファイルを示します)。

最初の文字がドット('.')の場合、ドットは削除されます。


fileMode : enumeration

このプロパティは、ダイアログのモードを保持します。

利用可能な値

定数説明
FileDialog.OpenFileダイアログは、既存のファイルを選択するために使用されます(デフォルト)。
FileDialog.OpenFilesダイアログは、複数の既存ファイルを選択するために使用されます。
FileDialog.SaveFileダイアログは任意のファイルを選択するために使用されます。ファイルは存在する必要はありません。

nameFilters : list<string>

このプロパティは、選択できるファイルのタイプを制限するフィルタを保持します。

FileDialog {
    nameFilters: ["Text files (*.txt)", "HTML files (*.html *.htm)"]
}

プラットフォームが異なると、選択できるファイルが異なる方法で制限されることがあります。例えば、macOSはフィルターに一致しないファイルエントリーを無効にしますが、Windowsは非表示にします。

注: *.*はポータブルフィルターではありません。なぜなら、ファイルの拡張子がファイルタイプを決定するという歴史的な前提は、すべてのオペレーティングシステムで一貫していないからです。ファイル名にドットがないファイルを持つことは可能です(例えば、Makefile )。Windowsネイティブのファイルダイアログでは、*.*はそのようなファイルにマッチしますが、他のタイプのファイルダイアログではマッチしないことがあります。そのため、どのようなファイルでも選択するのであれば* を使う方がよい。

selectedNameFilterも参照してください


options : flags

このプロパティは、ダイアログのルック&フィールに影響する様々なオプションを保持します。

デフォルトでは、すべてのオプションは無効になっています。

オプションはダイアログを表示する前に設定する必要があります。ダイアログが表示されている間にオプションを設定しても、ダイアログにすぐに効果があるとは限りません(オプションやプラットフォームによって異なります)。

利用可能なオプション

定数説明
FileDialog.DontResolveSymlinksファイルダイアログでシンボリックリンクを解決しない。デフォルトではシンボリックリンクは解決されます。
FileDialog.DontConfirmOverwrite既存のファイルが選択された場合、確認を要求しない。デフォルトでは確認が要求されます。
FileDialog.ReadOnlyダイアログでディレクトリを作成できないことを示します。
FileDialog.HideNameFilterDetailsファイル名フィルタの詳細を隠すかどうかを指定します。
FileDialog.DontUseNativeDialog非ネイティブのクイック実装をダイアログに強制的に使用させます。

rejectLabel : string

このプロパティは、ダイアログを拒否するボタンに表示されるラベルテキストを保持します。

空文字列に設定された場合、基礎となるプラットフォームのデフォルトラベルが使用されます。デフォルトのラベルは通常Cancel です。

デフォルト値は空文字列です。

acceptLabelも参照してください


selectedFile : url

このプロパティは、ダイアログで最後に選択されたファイルを保持します。

ダイアログを開いたときに選択されるファイルを制御するために設定することができます。

選択されたファイルが複数ある場合、このプロパティは最初のファイルを参照する。

このプロパティの値は、ユーザーがダイアログでファイルを選択するたびに更新され、ダイアログが受け入れられたときに更新されます。accepted() シグナルを処理して、最終的な選択を取得する。

selectedFilesaccepted()、currentFolderも参照


selectedFiles : list<url>

このプロパティは、ダイアログで最後に選択されたファイルを保持する。

このプロパティの値は、ユーザがダイアログ内でファイルを選択するたびに更新され、ダイアログが受理されると更新されます。accepted() シグナルを処理して、最終的な選択内容を取得します。

accepted() およびcurrentFolderも参照して ください。


selectedNameFilter group

selectedNameFilter.extensions : list<string>

selectedNameFilter.globs : list<string>

selectedNameFilter.index : int

selectedNameFilter.name : string

これらのプロパティは、現在選択されている名前フィルタを保持します。

名前説明
index: intこのプロパティは、どのname filter が選択されているかを決定する。ダイアログが開かれると、指定されたフィルタが選択されます。値が更新されるのは、ユーザが別のフィルタを選択したときである。
[読み取り専用]name: stringこのプロパティは選択されたフィルタの名前を保持する。以下の例では、1つ目のフィルターの名前は"Text files" 、2つ目のフィルターの名前は"HTML files" です。
[読み込み専用]extensions: list<string>このプロパティは選択されたフィルターの拡張子のリストを保持します。以下の例では、最初のフィルタの拡張子のリストは["txt"] で、2 番目は["html", "htm"] です。
[読み取り専用]globs: list<string>このプロパティは、選択されたフィルタのグロブのリストを保持します。以下の例では、最初のフィルタのグロブのリストは["*.txt"] で、2 番目は["*.html", "*.htm"] です。

このプロパティは、FolderListModelnameFilters プロパティなどと組み合わせて使用すると便利です。

FileDialog {
    id: fileDialog
    selectedNameFilter.index: 1
    nameFilters: ["Text files (*.txt)", "HTML files (*.html *.htm)"]
}

MyDocument {
    id: document
    fileType: fileDialog.selectedNameFilter.extensions[0]
}

nameFiltersも参照してください


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