crossplatform.ru

Здравствуйте, гость ( Вход | Регистрация )


  Ответ в Вывод в кольсоль в ту же строку
Введите ваше имя
Подтвердите код

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

Опции сообщения
 Включить смайлы?
Иконки сообщения
(Опционально)
                                
                                
  [ Без иконки ]
 


Последние 10 сообщений [ в обратном порядке ]
NordWest Дата 19.5.2011, 18:10
  Так просто, а какое счастье! Спасибо огромное за ликбез! :)
Litkevich Yuriy Дата 19.5.2011, 17:05
  нужно вместо конца строки (перевод строки+возврат каретки) делать только возврат каретки - "\r".
пример:
QTextStream out(stdout);

out << trUtf8("Копирование:\n");
double current = 0;
foreach(QString sFileName, all){
    ++current;
    out << "Complete: "
        << ( (current * 100)/cnt) << qSetRealNumberPrecision(3)
        << "%    \r" << flush;
    
    // Делаем полезную работу
}
out << reset << endl << flush;
здесь qSetRealNumberPrecision(3) задаёт формат вывода в консоль (стандартный поток вывода), а reset - сбрасывает в исходное состояние настройки потока.

Т.к. qDebug() всегда делает "конец строки", то прийдётся глобально для всего приложения переопределять работу обработчиков qDebug(), qFatal(),...
(см. тут)
NordWest Дата 19.5.2011, 15:55
  Как вот сделать, чтобы выводить в консоль, по qDebug например, не в новую строчку, а взамен предыдущей. Т.е. процент выполнения процесса в частности. Чтобы не куча строк писалась, а одна. В которой меняется число. Давно хотел узнать.
Просмотр темы полностью (откроется в новом окне)
RSS Текстовая версия Сейчас: 28.3.2024, 23:35