FileSaveDialog
Отображает диалог сохранения файла.
FileSaveDialog ( "title", "init dir", "filter" [, options = 0 [, "default name" [, hwnd ]]] )
Параметры
title | Заголовок диалогового окна. |
init dir |
Каталог, который будет открыт изначально в диалоговом окне. |
filter |
Типы файлов, доступные для выбора. Например (см. также примечания): "Все (*.*)" "Текстовые файлы (*.txt)" "Все (*.*)|Рисунки (*.bmp;*.gif;*.jpg)|Видео файлы (*.avi;*.mpg)" |
options |
[необязательный] Опции диалога: сложите необходимые значения, чтобы использовать опции вместе. 2 = Путь должен существовать (если пользователем был выбран путь, оканчивающийся обратным слешем) 16 = Выдать запрос на перезапись файла |
default name |
[необязательный] Имя файла, которое будет выбрано при создании диалога. По умолчанию нет (""). |
hwnd |
[необязательный] Дескриптор окна для использования в качестве родительского по отношению к этому диалоговому окну. |
Возвращаемое значение
Успех: | Возвращает полный путь и имя выбранных файлов. Результат для нескольких объектов: "Каталог|Файл1|Файл2|..." |
Ошибка: | Устанавливает значение @error |
@error: | 1 - Ошибка при выборе файла. |
2 - Неправильный фильтр. |
Примечания
Разделяйте фильтры выбора типов файлов с помощью точки с запятой, как указано в примере.См. также
FileOpenDialog, FileSelectFolderПример
; иные спец-каталоги смотрите в "Приложения --> CLSID" и в "Макросы каталогов"
$MyDocsFolder = "::{450D8FBA-AD25-11D0-98A8-0800361B1103}"
$var = FileSaveDialog("Выберите имя.", $MyDocsFolder, "Скрипт (*.aut;*.au3)", 2)
; параметр 2 = диалог остаётся пока не выбран валидный путь или файл
If @error Then
MsgBox(4096, "", "Отмена сохранения.")
Else
MsgBox(4096, "", "Вы выбрали " & $var)
EndIf
; Множественная группа фильтров (категорий типов файлов)
$var = FileSaveDialog("Выберите имя.", $MyDocsFolder, "Скрипт (*.aut;*.au3)|Текстовый файл (*.ini;*.txt)", 2)
; параметр 2 = диалог остаётся пока не выбран валидный путь или файл
If @error Then
MsgBox(4096, "", "Отмена сохранения.")
Else
MsgBox(4096, "", "Вы выбрали " & $var)
EndIf