- 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
Bir dosya veya klasör açma/oluşturma iletişim kutusu oluşturun.
int FileSelectDialog(
|
Parametreler
caption
[in] İletişim kutusu penceresi başlığı.
initial_dir
[in] İçeriği iletişim kutusunda görüntülenecek olan MQL5\Files dizinindeki başlangıç dizini adı. Değer NULL ise, iletişim kutusunda MQL5\Files görüntülenir.
filter
[in] Seçim iletişim penceresinde görüntülenecek dosyaların uzantı filtresi. Diğer formatlardaki dosyalar gizlenir.
flags
[in] İletişim penceresi modunu tanımlayan bayrakların kombinasyonu. Bayraklar aşağıdaki gibi tanımlanır:
FSD_WRITE_FILE - dosya açma iletişim kutusu;
FSD_SELECT_FOLDER - yalnızca klasör seçimine izin ver;
FSD_ALLOW_MULTISELECT - birden fazla dosya seçimine izin ver;
FSD_FILE_MUST_EXIST - seçilen dosyalar mevcut olmalıdır;
FSD_COMMON_FOLDER - dosya tüm müşteri terminallerinin \Terminal\Common\Files ortak klasöründe bulunur.
filenames[]
[out] Seçili dosyaların/klasörlerin isimlerinin yerleştirileceği dizgeler dizisi.
default_filename
[in] Varsayılan dosya/klasör adı. Belirtilirse, açık iletişim kutusuna otomatik olarak bir ad eklenir ve sınama sırasında filenames[] dizisine geri döndürülür.
Geri dönüş değeri
Başarılı yürütme durumunda, fonksiyon, adları filenames[]'den elde edilebilen seçili dosyaların sayısını geri döndürür. Kullanıcı iletişim kutusunu bir dosya seçmeden kapatırsa fonksiyon 0 değerini döndürür. Başarısız yürütme durumunda, 0'dan küçük bir değer döndürülür. Hata kodu GetLastError() kullanılarak elde edilebilir.
Not
Güvenlik nedeniyle, dosyalarla çalışmak MQL5 dilinde katı bir biçimde denetlenir. MQL5 dili aracılığıyla dosya işlemlerinde kullanılan dosyalar, dosya sandboxının dışında (yani, MQL5\Files dizininin dışında) bulunamaz.
initial_dir adı, müşteri terminalinin dizinindeki MQL5\Files'da (veya sınama durumunda test_agent_directory\MQL5\Files'da) aranır. Bayraklar arasından FSD_COMMON_FOLDER ayarlanırsa, başlangıç dizininin aranması tüm müşteri terminalleri \Terminal\Common\Files ortak klasöründe gerçekleştirilir.
filter parametresi geçerli dosyaları belirtir ve "<açıklama 1>|<uzantı 1>|<açıklama 2>|<uzantı 2>..." biçiminde ayarlanmalıdır, örneğin, "Metin dosyaları (*.txt)|*.txt|Tüm dosyalar (*.*)|*.*". İlk uzantı "Metin dosyaları (*.txt)|*.txt" varsayılan dosya tipi olarak seçilir.
filter=NULL ise, iletişim penceresindeki dosya seçimi maskesi "Tüm Dosyalar (*.*)|*.*|" olur.
default_filename parametresi ayarlanırsa, FileSelectDialog()'u çağırmak 1 değerini geri döndürürken, default_filename değerinin kendisi görselleştirilmemiş sınama sırasında filenames[] dizisine kopyalanır.
Özel göstergelerde fonksiyonun kullanılması önerilmez, çünkü FileSelectDialog() çağrısı, kullanıcının yanıtını beklerken göstergenin yürütme iş parçasını tüm zaman boyunca askıya alır. Her bir sembol için tüm göstergeler tek bir iş parçacığında yürütüldüğünden, bu sembol için tüm zaman dilimlerinin tüm grafikleri askıya alınır.
Örnek:
//+------------------------------------------------------------------+
|
Ayrıca bakınız
FileOpen, FileIsExist, FileDelete, FileMove, FolderCreate, FolderDelete, FolderClean, Flags of opening files