Описание функции


FileOpenDialog

Отображает диалог открытия файла.

FileOpenDialog('title','initdir','filter'[,options=0[,'defaultname'[,hwnd]]])

Параметры

title Заголовок диалогового окна.
initdir Каталог, который будет открыт изначально в диалоговом окне.
filter Типы файлов, доступные для выбора. Например (см. также примечания):
'Все~~(*.*)'
'Текстовые~~файлы~~(*.txt)'
'Все~~(*.*)|Рисунки~~(*.bmp;*.gif;*.jpg)|Видео~~(*.avi;*.mpg)'
options [необязательный] Опции диалога: сложите необходимые значения, чтобы использовать опции вместе.
  1 = Файл должен существовать (если пользователем был выбран файл?)
  2 = Путь должен существовать (если пользователем был выбран путь, оканчивающийся обратным слешем)
  4 = Разрешить выбор нескольких объектов
  8 = Выдать запрос на создание нового файла (если не существует)
defaultname [необязательный] Имя файла по умолчанию, которое будет выбрано при создании диалога. По умолчанию нет ('').
hwnd [необязательный] Дескриптор окна для использования в качестве родительского по отношению к этому диалоговому окну.

Возвращаемое значение

Успех:Возвращает полный путь и имена выбранных файлов. Результат для нескольких объектов: "Каталог|Файл1|Файл2|..."
Ошибка:Устанавливает значение @error
@error:1 - ошибка при выборе файла.
2 - неправильный фильтр.

Примечания

Разделяйте фильтры выбора типов файлов с помощью точки с запятой, как указано в примере.
Если необходимо использовать несколько групп фильтров, следует разделять их с помощью символа "|".

Если указано имя файла по умолчанию, опции диалога также должны быть указаны. Если нет необходимости их использовать, оставьте значение параметра равным 0.

Специальные каталоги Windows (такие как "Мои Документы") могут быть заданы корневыми при использовании правильного CLSID, указанного в приложении и в Дополнении №35.

@WorkingDir изменяется при удачном выполнении функции.

Функцию можно подключить через команду exect
Для передачи пустой строки можно воспользоваться ключевым словом Null

См. также

FileSaveDialog, FileSelectFolder

Примеры:
 Как создать кнопку?


exect=$var_s=FileOpenDialog('Выберите~~имя.','::{450D8FBA-AD25-11D0-98A8-0800361B1103}','Скрипт(*.aut;*.au3)|Текстовый~~файл(*.ini;*.txt)',2)||Eval('var_s')?_ViewValues('$var_s'):_Exit() ;; отображает диалог открытия файла. Если не выбран, то выход

exect=$var_put=FileOpenDialog('Select~~the~~file','::{450D8FBA-AD25-11D0-98A8-0800361B1103}','File~~Wallet(*.exe)',2)||_ViewValues('$var_put')||$var_put=$var_put=''''?_Exit():$var_put||_ViewValues('$var_put') ;; отображает диалог открытия файла. Если не выбран, то выход

exect=$var_s=FileOpenDialog('Выберите~~файл.',Null,'(*.*)',2) ;; диалог открытия файла

exect=$var_s=FileOpenDialog('Выберите~~файл.','"%P"','(*.*)',2,Null,WinGetHandle('[CLASS:TTOTAL_CMD]')) ;; диалог открытия файла с блокировкой окна (предотвращает доступ к указанному родительскому окну, пока существует диалог)

exect=$var_s=FileOpenDialog('Выберите~~файл.','D:\','(*.*)',2)||Eval('var_s')?_ViewValues('$var_s'):_Exit() ;; отображает диалог открытия файла. Если не выбран, то выход


© Аверин Андрей для Total Commander Image  Averin-And@yandex.ru