En esta página

FileDialog QML Type

Un diálogo de archivo. Más...

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

Dialog

Propiedades

Descripción detallada

El tipo FileDialog proporciona una API QML para diálogos de archivos.

El tipo de diálogo de archivo permite que los diálogos copien el aspecto nativo de la plataforma

Para mostrar un diálogo de archivo, construya una instancia de FileDialog, establezca las propiedades deseadas y llame a open(). La propiedad currentFolder puede utilizarse para determinar la carpeta en la que se abre el diálogo. Las propiedades selectedFile y selectedFiles pueden utilizarse para determinar qué archivo(s) se seleccionan cuando se abre el diálogo, y también se actualizan cuando el usuario selecciona un archivo en el diálogo y cuando se acepta el diálogo.

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
    }
}

Disponibilidad

Actualmente está disponible un diálogo de archivos nativo de la plataforma en las siguientes plataformas:

  • Android
  • iOS
  • Linux (cuando se ejecuta con el tema de plataforma GTK+)
  • macOS
  • Windows

Qt Quick Dialogs utiliza una implementación de Qt Quick como alternativa en plataformas que no disponen de una implementación nativa.

Véase también FolderDialog y StandardPaths.

Documentación de propiedades

acceptLabel : string

Esta propiedad contiene el texto de la etiqueta mostrada en el botón que acepta el diálogo.

Cuando se establece a una cadena vacía, se utiliza la etiqueta por defecto de la plataforma subyacente. La etiqueta por defecto suele ser Open o Save dependiendo de en qué fileMode se utilice el diálogo.

El valor por defecto es una cadena vacía.

Véase también rejectLabel.

currentFolder : url

Esta propiedad contiene la carpeta donde se seleccionan los archivos. Puede establecerse para controlar el directorio inicial que se muestra cuando se abre el diálogo.

Para seleccionar una carpeta, utilice FolderDialog en su lugar.

defaultSuffix : string

Esta propiedad contiene un sufijo que se añade a los archivos seleccionados que no tienen un sufijo especificado. El sufijo se utiliza normalmente para indicar el tipo de archivo (por ejemplo, "txt" indica un archivo de texto).

Si el primer carácter es un punto ('.'), se elimina.

fileMode : enumeration

Esta propiedad contiene el modo del diálogo.

Valores disponibles:

ConstanteDescripción
FileDialog.OpenFileEl diálogo se utiliza para seleccionar un fichero existente (por defecto).
FileDialog.OpenFilesEl diálogo se utiliza para seleccionar múltiples ficheros existentes.
FileDialog.SaveFileEl diálogo se utiliza para seleccionar cualquier fichero. No es necesario que el fichero exista.

nameFilters : list<string>

Esta propiedad contiene los filtros que restringen los tipos de archivos que se pueden seleccionar.

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

Diferentes plataformas pueden restringir los archivos que pueden ser seleccionados de diferentes maneras. Por ejemplo, macOS desactivará las entradas de archivos que no coincidan con los filtros, mientras que Windows las ocultará.

Nota: *.* no es un filtro portable, porque la suposición histórica de que la extensión del archivo determina el tipo de archivo no es consistente en todos los sistemas operativos. Es posible tener un archivo sin punto en su nombre (por ejemplo, Makefile). En un diálogo de archivos nativo de Windows, *.* coincidirá con dichos archivos, mientras que en otros tipos de diálogos de archivos puede que no. Así que es mejor usar * si quiere seleccionar cualquier archivo.

Véase también selectedNameFilter.

options : flags

Esta propiedad contiene las distintas opciones que afectan al aspecto del diálogo.

Por defecto, todas las opciones están desactivadas.

Las opciones deben establecerse antes de mostrar el diálogo. Establecerlas mientras el diálogo está visible no garantiza que tenga un efecto inmediato en el diálogo (dependiendo de la opción y de la plataforma).

Opciones disponibles:

ConstanteDescripción
FileDialog.DontResolveSymlinksNo resolver enlaces simbólicos en el diálogo de archivos. Por defecto se resuelven los enlaces simbólicos.
FileDialog.DontConfirmOverwriteNo pedir confirmación si se selecciona un fichero existente. Por defecto se pide confirmación.
FileDialog.ReadOnlyIndica que el diálogo no permite crear directorios.
FileDialog.HideNameFilterDetailsIndica si los detalles del filtro de nombre de fichero están ocultos o no.
FileDialog.DontUseNativeDialogFuerza al diálogo a utilizar una implementación rápida no nativa.

rejectLabel : string

Esta propiedad contiene el texto de la etiqueta que se muestra en el botón que rechaza el diálogo.

Cuando se establece a una cadena vacía, se utiliza la etiqueta por defecto de la plataforma subyacente. La etiqueta por defecto suele ser Cancel.

El valor por defecto es una cadena vacía.

Véase también acceptLabel.

selectedFile : url

Esta propiedad contiene el último archivo que se seleccionó en el diálogo.

Puede establecerse para controlar el fichero que se selecciona cuando se abre el diálogo.

Si hay varios archivos seleccionados, esta propiedad se refiere al primer archivo.

El valor de esta propiedad se actualiza cada vez que el usuario selecciona un archivo en el diálogo, y cuando se acepta el diálogo. Maneje la señal accepted() para obtener la selección final.

Véase también selectedFiles, accepted(), y currentFolder.

selectedFiles : list<url>

Esta propiedad contiene los últimos archivos seleccionados en el diálogo.

El valor de esta propiedad se actualiza cada vez que el usuario selecciona archivos en el diálogo, y cuando el diálogo es aceptado. Maneja la señal accepted() para obtener la selección final.

Véase también accepted() y currentFolder.

selectedNameFilter group

selectedNameFilter.extensions : list<string>

selectedNameFilter.globs : list<string>

selectedNameFilter.index : int

selectedNameFilter.name : string

Estas propiedades contienen el filtro de nombre seleccionado actualmente.

NombreDescripción
índice: intEsta propiedad determina qué name filter está seleccionado. El filtro especificado se selecciona cuando se abre el cuadro de diálogo. El valor se actualiza cuando el usuario selecciona otro filtro.
[sólo lectura] name: stringEsta propiedad contiene el nombre del filtro seleccionado. En el ejemplo siguiente, el nombre del primer filtro es "Text files" y el del segundo es "HTML files".
[sólo lectura] extensions: lista<string>Esta propiedad contiene la lista de extensiones del filtro seleccionado. En el ejemplo siguiente, la lista de extensiones del primer filtro es ["txt"] y la del segundo es ["html", "htm"].
[sólo lectura] globs: lista<cadena>Esta propiedad contiene la lista de globs del filtro seleccionado. En el ejemplo siguiente, la lista de globs del primer filtro es ["*.txt"] y la del segundo es ["*.html", "*.htm"].

Esta propiedad es útil junto con la propiedad nameFilters de FolderListModel, por ejemplo.

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

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

Véase también nameFilters.

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