OpenFileRequester()
Синтаксис
Filename$ = OpenFileRequester(Title$ , DefaultFile$ , Pattern$ , PatternPosition [, Flags])
Описание
Открывает стандартный запрос для выбора файла пользователем. Можно задать заголовок на замену заголовка по умолчанию. Параметр DefaultFile$ полезен для инициализации запроса в правильной директории (каталоге) и с правильным именем файла.
Параметры
Title$ Заголовок окна запроса. DefaultFile$ Файл, отображаемый по умолчанию, при открытии запроса. Pattern$ Стандартный фильтр, который позволяет отображать только файлы, которые оканчиваются на нужное расширение. Он должен иметь следующий вид:
"Текстовый файл | *.txt | Музыкальный файл | *.mus;*.mod".
Шаблон всегда работает в парах: имя (которое появится в фильтре) и расширение (т.е. *.txt). Для одного типа можно задать несколько расширений с помощью разделителя ; (точка с запятой), (для OSX это не поддерживается, там запросчик всегда отображает все файлы.PatternPosition Число, указывающее шаблон, используемый по умолчанию. Значение между 0 и общим количеством шаблонов минус 1 (потому что индекс для первого шаблона начинается с 0). Когда запрос закроется, получить выбранный шаблон можно с помощью функции SelectedFilePattern(), (не поддерживается на OSX). Flags (дополн.) Это может быть одно из следующих значений: #PB_Requester_MultiSelection: Разрешить множественный выбор. (Смотрите NextSelectedFilename())
Возвращаемое значение
Выбранное имя файла или пустая строка, если запрос был отменен пользователем.
Комментарии
Возвращенное 'Filename$' легко можно разделить на строки файла, пути и расширения с помощью следующих функций: GetFilePart(), GetPathPart() и GetExtensionPart().
Пример
StandardFile$ = "C:\autoexec.bat" ; задаём начальный файл+путь для отображения ; В следующей строке мы зададим шаблоны поиска ("|" как разделитель) для отображения файлов: ; 1-й: "Текст (*.txt)" как имя, ".txt" и ".bat" как допускаемое расширение ; 2-й: "PureBasic (*.pb)" как имя, ".pb" как допускаемое расширение ; 3-й: "Все файлы (*.*) как имя, "*.*" как допускаемое расширение, корректное для всех файлов Pattern$ = "Текст (*.txt)|*.txt;*.bat|PureBasic (*.pb)|*.pb|Все файлы (*.*)|*.*" Pattern = 0 ; используем первый из трёх возможных шаблонов как стандарт File$ = OpenFileRequester("Пожалуйста выберите файл для загрузки", StandardFile$, Pattern$, Pattern) If File$ MessageRequester("Инфо", "Вы выбрали следующий файл:" + Chr(10) + File$, 0) Else MessageRequester("Инфо", "Запрос был отменён.", 0) EndIf
См. также
NextSelectedFilename()
Поддерживаемые OS
Все