PureBasic

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

Все

<- NextSelectedFilename() - Оглавление Requester - PathRequester()->