Qt5: Как изменить скорость загрузки, чтобы показать 1.xx MB / S вместо 1.xxxxx MB / S?

StackOverflow https://stackoverflow.com//questions/22022827

  •  21-12-2019
  •  | 
  •  

Вопрос

 ui->progressBar->setTextVisible(true);
 ui->progressBar->setMaximum(totalBytes);
 ui->progressBar->setValue(readBytes);

double speed = readBytes * 1000.0 / downloadTime.elapsed();
    QString unit;
    if (speed < 1024) {
        unit = "bytes/sec";
    } else if (speed < 1024*1024) {
        speed /= 1024;
        unit = "kB/s";
    } else {
        speed /= 1024*1024;
        unit = "MB/s";
    }

    QString spd = QString::number(speed);

    ui->progressBar->setFormat(spd+" "+unit);
.

Это работает так: http://i.imgur.com/rwvir8p.png

Как я должен изменить этот код, чтобы показать скорость, такую как 1.xx MB / S? спасибо за помощь

Это было полезно?

Решение

Вы должны использовать третий аргумент qstring ::Номер :

QString::number(1.6183456, 'f', 2)
// -> "1.62"
.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top