2017-02-17 3 views
1

У меня есть метод. Этот метод имеет статический QTime, но я хочу сбросить это значение, если что-то произошло.Статическое значение времени Qtime

static QTime time(QTime::currentTime()); 

// calculate two new data points: 
double key = time.elapsed()/1000; 

static double lastPointKey = 0; 

if(newPlot == true){ 
    // like tihs key = 0 ;   
    // lastPointKey = 0 ; 
} 

ответ

1

Используйте метод QTime::restart() для сброса таймера.

Кроме того, взгляните на класс QElapsedTimer. Он имеет аналогичный API (elapsed(), restart() и т. Д.), Однако вы можете найти его более подходящим для вашей ситуации. Из документации:

QElapsedTimer будет использовать монотонный опорный тактовый платформы во всех платформах, которые поддерживают его. Это имеет дополнительное преимущество, которое QElapsedTimer невосприимчиво к настройкам времени, , например, пользователю, исправляющему время. Также в отличие от QTime, QElapsedTimer невосприимчив к изменениям в настройках часового пояса, таких как дневной свет периодов.

Смежные вопросы