Сложно догадаться, чего вы действительно хотите. Глядя на ваш код, вы устанавливаете tmp на 0, после чего вычисляете разницу tmp (которая по-прежнему равна 0) с 0 (начало дня), что делает вашу переменную time = 0-0 = 0. Совершенно правильно, но не то, что ты хочешь. Если вы хотите узнать текущее время, вы можете использовать
QTime tm = QTime::currentTime();
DWORD dtime = tm.msecsSinceStartOfDay();
Кстати: я бы не использовал переменную с именем time
, так как это может создать путаницу с библиотечной функцией time()
. Я видел очень странное поведение после использования переменной с именем 'time'.