Russian Qt Forum

Qt => Общие вопросы => Тема начата: Примерный ученик от Ноябрь 01, 2009, 16:35



Название: разница между двумя QTime
Отправлено: Примерный ученик от Ноябрь 01, 2009, 16:35
Как найти разницу между двумя интервалами времени в формате QTime?
Переводить в часы, мин, сек и ручками отнимать и снова засылать в QTime?

QT 3.3.8


Название: Re: разница между двумя QTime
Отправлено: Igors от Ноябрь 01, 2009, 18:22
Как найти разницу между двумя интервалами времени в формате QTime?
Переводить в часы, мин, сек и ручками отнимать и снова засылать в QTime?

QT 3.3.8
Не смертельно

Код:
#include <QTime>
 
#define SEC_MS 1000
#define MIN_MS (SEC_MS * 60)
#define HOUR_MS (MIN_MS * 60)

QTime operator - ( const QTime & t1, const QTime & t2 )
{
int diff = t2.msecsTo(t1);
return QTime(diff / HOUR_MS,
 (diff % HOUR_MS) / MIN_MS,
 (diff % MIN_MS) / SEC_MS,
  diff % SEC_MS);
}


Название: Re: разница между двумя QTime
Отправлено: Примерный ученик от Ноябрь 01, 2009, 18:41
Спасибо! Действительно - не смертельно :)


Название: Re: разница между двумя QTime
Отправлено: Примерный ученик от Ноябрь 01, 2009, 19:01
Igors

токо не работает твое предложение.
QTime::msec() возвращает разницу между миллисекундами двух времен, а не разницу между ними в мсек ???


Название: Re: разница между двумя QTime
Отправлено: Rcus от Ноябрь 01, 2009, 19:34
Цитировать
int QTime::msecsTo ( const QTime & t ) const


Название: Re: разница между двумя QTime
Отправлено: Igors от Ноябрь 01, 2009, 19:48
QTime::msec() возвращает разницу между миллисекундами двух времен, а не разницу между ними в мсек ???
Подправил, спасибо Rcus