Как создать диалоговое окно «Обзор папки» в Adobe FLEX? - PullRequest
6 голосов
/ 15 февраля 2011

Кто-нибудь знает, как создать диалог «Обзор папки» в Adobe FLEX?А это возможно?

Спасибо.

Ответы [ 3 ]

19 голосов
/ 15 февраля 2011

Если это приложение Air, которое вы можете сделать:

var f : File = new File;
f.addEventListener(Event.SELECT, onFolderSelected);
f.browseForDirectory("Choose a directory");

Если это чистое приложение As3, вы не можете просмотреть папку, вы можете просто найти файл через FileReference класс.

5 голосов
/ 16 февраля 2011

в Интернете, для загрузки нескольких файлов (для загрузки одного файла используйте FileRefernce)

private var _refAddFiles:FileReferenceList;
private function browse():void
{
    _refAddFiles = new FileReferenceList();
    var fileFilter:FileFilter=new FileFilter("*.jpg","*.jpg;*.jpeg;");
    _refAddFiles.addEventListener(Event.SELECT, onSelectFile);
    _refAddFiles.browse([fileFilter]);
}

<mx:Button click="browse"/>

Это будет работать, и то, что вы хотите сделать после выбора,

private function onSelectFile(event:Event):void
{
    _arrUploadFiles = [ ];
    if (_refAddFiles.fileList.length >= 1)
    {               
        for (var k:Number = 0; k < _refAddFiles.fileList.length; k++)
        {
            _arrUploadFiles.push({ name: _refAddFiles.fileList[k].name,
                                    file: _refAddFiles.fileList[k]});
        }
    }

}
3 голосов
/ 02 июля 2014

Это быстрый набор функций для создания приятного браузера папок во Flex:

private var file:File = new File();

private function pickFile(event:MouseEvent):void {
    file.addEventListener(Event.SELECT, openFile);              
    file.browseForDirectory("Select folder...");
}

private function openFile(event:Event):void{
    folderPath.text = file.nativePath;
}

Первая функция работает с браузером папок, вторая заполняет текстовый ввод полным путем к папке.

Howto:

На сцене создайте простую кнопку mx: и добавьте вызов функции pickFile () для события click:

<mx:Button click="{pickFile(event);}" />

Затем поместите также на сцену компонент mx: TextInput, чтобы показать путь к папке после выбора:

<mx:TextInput id="folderPath" editable="false" />

Таким образом, у вас есть кнопка, которую нужно нажать, чтобы показать браузер системной папки, и текстовый ввод, чтобы показать полный путь к папке после выбора.

Чтобы улучшить внешний вид кнопки, вы можете встроить красивый значок папки: -)

Просто мой 2с. : -)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...