Перейти к содержанию
Fire Monkey от А до Я
  • 0

Обновление ProgressBar


Ingalime

Вопрос

Здравствуйте.

Не получается увидеть обновление шкалы ProgressBar при загрузки аудио потока:

//TForm1.Button1Click
progress := 0;
repeat
      len := BASS_StreamGetFilePosition(str, BASS_FILEPOS_END);
      if (len = DW_Error) then
        break; //something's gone wrong! (eg. BASS_Free called)
      progress := BASS_StreamGetFilePosition(str, BASS_FILEPOS_BUFFER) * 100 div len;
      ProgressBar1.Value := progress;
      //Application.ProcessMessages(); //не помогает
      //ProgressBar1.Repaint(); //не помогает
     until
      (progress > 75) or (BASS_StreamGetFilePosition(str, BASS_FILEPOS_CONNECTED) = 0); // over 75% full (or end of download)

     //test
     ShowMessage(IntToStr(Trunc(ProgressBar1.Value))); //75 OК!

Подскажите как правильно убрать код цикла в отдельный поток из него обновлять ProgressBar или надо по другому?

Спасибо.

Изменено пользователем Ingalime
Ссылка на комментарий

Рекомендуемые сообщения

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить на вопрос...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

  • Последние посетители   0 пользователей онлайн

    • Ни одного зарегистрированного пользователя не просматривает данную страницу
×
×
  • Создать...