Отображение индикатора выполнения загрузки файла - PullRequest
2 голосов
/ 16 февраля 2010

Мне нужно создать приложение, в которое я могу добавлять файлы для загрузки. Когда я добавляю элементы для загрузки, индикатор прогресса должен отображаться вместе с каждым добавленным элементом. И когда я нажимаю для загрузки файла, прогресс загрузки файла для каждого файла должен отражаться в индикаторе выполнения. Прогресс должен использовать функцию как

.....
addEventListener(ProgressEvent.Progress, uploadProgressHandler);

private function uploadProgressHandler(event:ProgressEvent):void
{
    var numPerc:Number = Math.round((Number(event.bytesLoaded) / Number(event.bytesTotal)) * 100);

    //this.progBar.validateNow();

    .....
}  

Кто-нибудь может мне помочь?

Ответы [ 3 ]

1 голос
/ 22 февраля 2010
0 голосов
/ 16 февраля 2010

Вот два замечательных примера загрузчиков файлов Flex (с использованием HTTP):

альтернативный текст http://blog.vixiom.com/uploads/merb_air_upload.png

Чтобы два приведенных выше примера работали вместе для достижения желаемого результата (загрузчик нескольких файлов, по одному ProgressBar на предварительный загрузчик в Flex), все, что вам нужно сделать, это:

  1. Загрузить PHP-проект Flex File Uploader
  2. Загрузите Merb AIR Uploader и скопируйте / вставьте "UploadProgressComponent.mxml" куда-нибудь в проект PHP (на данный момент скопируйте в src/UploadProgressComponent.mxml).
  3. Замените DataGrid списком и пользовательским ItemRenderer в FileUpload.mxml в проекте PHP Flex File Uploader.

Заменить это:

<mx:DataGrid id="listFiles" left="0" top="0" bottom="0" right="0"  
 allowMultipleSelection="true" verticalScrollPolicy="on"
 draggableColumns="false" resizableColumns="false" sortableColumns="false">
    <mx:columns>
        <mx:DataGridColumn headerText="File" dataField="name" wordWrap="true"/>
        <mx:DataGridColumn headerText="Size" dataField="size" width="75" textAlign="right"/>
    </mx:columns>
</mx:DataGrid>  

с этим:

<mx:List id="listFiles" left="0" top="0" bottom="0" right="0"
 allowMultipleSelection="true" verticalScrollPolicy="on"
 itemRenderer="UploadProgressComponent"/>  

Результат: загрузчик нескольких файлов во Flex с пользовательским ItemRenderer, у которого есть ProgressBar для каждой FileReference. Загрузка в скрипт PHP, который вы можете поменять на что угодно.

Должно быть очень легко настроить оттуда. Дай мне знать, если это работает, Lance

0 голосов
/ 16 февраля 2010

Flex имеет класс ProgressBar , вы это уже проверили?

...