- FileSelectDialog
- FileFindFirst
- FileFindNext
- FileFindClose
- FileIsExist
- FileOpen
- FileClose
- FileCopy
- FileDelete
- FileMove
- FileFlush
- FileGetInteger
- FileIsEnding
- FileIsLineEnding
- FileReadArray
- FileReadBool
- FileReadDatetime
- FileReadDouble
- FileReadFloat
- FileReadInteger
- FileReadLong
- FileReadNumber
- FileReadString
- FileReadStruct
- FileSeek
- FileSize
- FileTell
- FileWrite
- FileWriteArray
- FileWriteDouble
- FileWriteFloat
- FileWriteInteger
- FileWriteLong
- FileWriteString
- FileWriteStruct
- FileLoad
- FileSave
- FolderCreate
- FolderDelete
- FolderClean
FileSelectDialog
Crea una ventana de diálogo para crear/abrir un archivo o carpeta.
int FileSelectDialog(
|
Parámetros
caption
[in] Encabezado de la ventana de diálogo.
initial_dir
[in] Nombre de la carpeta inicial con respecto a la carpeta MQL5\Files cuyo contenido se mostrará en la ventana de diálogo. Si el valor es igual a NULL, en la ventana de diálogo se mostrará la carpeta MQL5\Files.
filter
[in] Filtro de extensiones de los archivos que se mostrarán en la ventana de diálogo para su selección. Los archivos de otros formatos permanecerán ocultos.
flags
[in] Combinación de banderas que determina el modo de la ventana de diálogo. Las banderas se determinan de la forma siguiente:
FSD_WRITE_FILE ventana de diálogo de apertura de archivos;
FSD_SELECT_FOLDER permite seleccionar solo carpetas;
FSD_ALLOW_MULTISELECT permite seleccionar varios archivos;
FSD_FILE_MUST_EXIST los archivos seleccionados deben existir;
FSD_COMMON_FOLDER el archivo está ubicado en la carpeta general de todos los terminales de cliente \Terminal\Common\Files.
filenames[]
[out] Matriz de líneas en la que se ubicarán los nombres de los archivos/carpetas elegidos.
default_filename
[in] Nombre del archivo/carpeta por defecto. Si ha sido establecido, este nombre se añade automáticamente a la ventana de diálogo de apertura, y se retorna en la matriz filenames[] en la simulación.
Valor retornado
Si se finaliza con éxito, la función retornará el número de archivos seleccionados cuyos nombres se pueden obtener en filenames[]. Si el usuario no ha seleccionado un archivo y ha cerrado la ventana de diálogo, la función retornará 0. Si se ejecuta sin éxito, se retornará un valor inferior a 0, el código de error se puede obtener con la ayuda de GetLastError().
Observación
Por motivos de seguridad, en el lenguaje MQL5 se controla estrictamente el trabajo con los archivos. Los archivos con los que se realizan operaciones de archivo usando los recursos de MQL5, no pueden encontrarse fuera del "sandbox" de archivo, para ser más exactos, fuera de la carpeta MQL5\Files.
El nombre de la carpeta inicial initial_dir se busca en el terminal de cliente, en la subcarpeta MQL5\Files (o catálogo_de_agente_de_simulación\MQL5\Files, en el caso de simulación). Si entre las banderas se indica FSD_COMMON_FOLDER, la carpeta inicial se buscará en la carpeta general de todos los terminales de cliente \Terminal\Common\Files.
El parámetro filter indica los archivos permitidos, y debe indicarse en el formato "<descripción 1>|<extensión 1>|<descripción 2>|<extensión 2>...". Por ejemplo, "Text files (*.txt)|*.txt|All files (*.*)|*.*", además, en este caso, la primera extensión "Text files (*.txt)|*.txt" se seleccionará como tipo de archivo por defecto.
Si filter=NULL, la máscara de selección de archivos en la ventana de diálogo será "All Files (*.*)|*.*|"
Si se ha establecido el parámetro default_filename, durante la simulación no visual, la llamada de FileSelectDialog() retornará 1, mientras que el propio valor default_filename se copiará en la matriz filenames[].
La función está prohibida en los indicadores de usuario, pues la llamada de FileSelectDialog() interrumpe el funcionamiento del flujo de ejecución mientras se espera la respuesta del usuario. Y puesto que todos los indicadores de cada símbolo se ejecutan en un único flujo, semejante interrupción hará imposible el funcionamiento de todos los gráficos en todos los marcos temporales de este símbolo.
Ejemplo:
//+------------------------------------------------------------------+
|
Ver también
FileOpen, FileIsExist, FileDelete, FileMove, FolderCreate, FolderDelete, FolderClean, banderas de apertura de archivos