FileDialog QML Type
Un diálogo de archivo. Más...
| Import Statement: | import QtQuick.Dialogs |
| Since: | Qt 6.2 |
| Inherits: |
Propiedades
- acceptLabel : string
- currentFolder : url
- defaultSuffix : string
- fileMode : enumeration
- nameFilters : list<string>
- options : flags
- rejectLabel : string
- selectedFile : url
- selectedFiles : list<url>
- selectedNameFilter
- selectedNameFilter.extensions : list<string>
- selectedNameFilter.globs : list<string>
- selectedNameFilter.index : int
- selectedNameFilter.name : string
Descripción detallada
El tipo FileDialog proporciona una API QML para diálogos de archivos.

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:
| Constante | Descripción |
|---|---|
FileDialog.OpenFile | El diálogo se utiliza para seleccionar un fichero existente (por defecto). |
FileDialog.OpenFiles | El diálogo se utiliza para seleccionar múltiples ficheros existentes. |
FileDialog.SaveFile | El 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:
| Constante | Descripción |
|---|---|
FileDialog.DontResolveSymlinks | No resolver enlaces simbólicos en el diálogo de archivos. Por defecto se resuelven los enlaces simbólicos. |
FileDialog.DontConfirmOverwrite | No pedir confirmación si se selecciona un fichero existente. Por defecto se pide confirmación. |
FileDialog.ReadOnly | Indica que el diálogo no permite crear directorios. |
FileDialog.HideNameFilterDetails | Indica si los detalles del filtro de nombre de fichero están ocultos o no. |
FileDialog.DontUseNativeDialog | Fuerza 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.
| Nombre | Descripción |
|---|---|
| índice: int | Esta 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: string | Esta 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.