- 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 finestra di dialogo di apertura/creazione di file o cartelle.
int FileSelectDialog(
|
Parametri
caption
[in] Header della finestra di dialogo.
initial_dir
[in] Nome della directory iniziale relativo a MQL5\Files, il cui contenuto deve essere visualizzato nella finestra di dialogo. Se il valore è NULL, MQL5\Files viene visualizzato nella finestra di dialogo.
filter
[in] Filtro di estensione dei file da visualizzare nella finestra di dialogo di selezione. I file di altri formati sono nascosti.
flags
[nel] Combinazione di flags definizione della modalità della finestra di dialogo. I flag sono definiti come segue:
FSD_WRITE_FILE – finestra di dialogo di apertura file;
FSD_SELECT_FOLDER – consente solo la selezione di cartelle;
FSD_ALLOW_MULTISELECT – consente la selezione di più file;
FSD_FILE_MUST_EXIST – i file selezionati dovrebbero esistere;
FSD_COMMON_FOLDER – il file si trova nella cartella comune di tutti i terminali client \Terminal\Common\Files.
filenames[]
[out] Array di stringhe in cui vengono inseriti i nomi dei file/cartelle selezionati.
default_filename
[in] Nome file/cartella predefinito. Se specificato, un nome viene automaticamente aggiunto alla finestra di dialogo aperta e restituito nell'array filenames[] durante il test.
Valore di Ritorno
In caso di completamento corretto, la funzione restituisce il numero di file selezionati i cui nomi è possibile ottenerli da filenames[]. Se un utente chiude la finestra di dialogo senza selezionare un file, la funzione restituisce 0. In caso di esito negativo, viene restituito un valore inferiore a 0. Il codice di errore può essere ottenuto utilizzando GetLastError().
Nota
Per motivi di sicurezza, lavorare con i file è rigorosamente controllato nel linguaggio MQL5. I file utilizzati nelle operazioni sui file mediante il linguaggio MQL5 non possono trovarsi al di fuori della sandbox dei file (vale a dire, al di fuori della directory MQL5\Files).
Il nome initial_dir viene cercato nella directory del terminale client in MQL5\Files (o directory_agente_di_testing\MQL5\Files in caso di testing). Se FSD_COMMON_FOLDER è impostato tra i flag, la ricerca della directory iniziale viene eseguita nella cartella comune di tutti i terminali client \Terminal\Common\Files.
Il parametro filter indica file validi e deve essere impostato nel formato "<descrizione 1>|<estensione 1>|<descrizione 2>|<estensione 2>...", ad esempio," File di testo (*.txt)|*.txt|Tutti i file (*.*)|*.*". La prima estensione "File di testo (*.txt)|*.txt" è selezionata come tipo di file predefinito.
Se filter=NULL, la maschera di selezione dei file nella finestra di dialogo è "Tutti i file (*.*)|*.*|"
Se il parametro default_filename è impostato, chiamando FileSelectDialog() restituisce 1, mentre il valore default_filename stesso viene copiato nell'array filenames[] durante i testing non-visualizzanti.
La funzione non è consigliata per l'uso in indicatori personalizzati, poiché la chiamata FileSelectDialog() sospende il thread di esecuzione dell'indicatore per tutto il tempo in attesa della risposta dell'utente. Poiché tutti gli indicatori per ciascun simbolo vengono eseguiti in un singolo thread, tutti i charts di tutti i timeframes per questo simbolo vengono sospesi.
Esempio:
//+------------------------------------------------------------------+
|
Guarda anche
FileOpen, FileIsExist, FileDelete, FileMove, FolderCreate, FolderDelete, FolderClean, Flags di apertura dei file