Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Начинающим";
Текущий архив: 2009.11.08;
Скачать: [xml.tar.bz2];

Вниз

подсчет времени   Найти похожие ветки 

 
Время   (2009-09-23 05:49) [0]

Подскажите как грамотно подсчитать время оставшееся между установленным , допустим 06:00:00 и нынешнем, допустим 07:00:00 должно получиться 23 часа (23:00:00). А никак не выходит.
В понятие "Оставшееся" я имею в виду, обратный таймер между начальным начальным временем 06:00:00 и нынешним : 07:00:00. То есть. проще говоря, если поставить будильник на 06:00:00, а сейчас 07:00:00 то будильник покажет что осталось до звонка - 23 часа. Вот КАК правильно посчитать это время? Никак не выходит :( Помогите пожалуйста.


 
brother ©   (2009-09-23 06:03) [1]

переведи часы в минуты, вычти, переведи в часы


 
sniknik ©   (2009-09-23 07:50) [2]

> КАК правильно посчитать это время?
завтра 6ч - (минус) сегодня 7ч = 23ч. все правильно, непонятно, что у тебя в операции разности не выходит, и как можно отнять неправильно...


 
Vitaliy_____   (2009-09-23 07:55) [3]

Если установленное меньше текущего (см. CompareTime), то результат=24 часа-разница, иначе результат=разница.
Для разницы полно ф-й, например MilliSecondsBetween, см. DateUtils - можно в секундах, минутах, часах - как угодно. Обычно беру в миллисекундах, а потом расписываю как мне надо.

> sniknik ©   (23.09.09 07:50) [2]

А если просто не используется дата, а только время :)


 
Anatoly Podgoretsky ©   (2009-09-23 09:12) [4]


> должно получиться 23 часа

Должна получиться ерунда. Поскольку отсутствует информация о дне.


 
Рамиль ©   (2009-09-23 09:13) [5]

Разница в часах
(DateTime1 - DateTime2) * 24
в минутах
(DateTime1 - DateTime2) * 24 * 60
и т. д.


 
Ega23 ©   (2009-09-23 10:01) [6]


> А если просто не используется дата, а только время :)


Используй TDateTime. Избежишь многих геморов.


 
Sha ©   (2009-09-23 10:57) [7]

procedure TForm1.Button1Click(Sender: TObject);
var
 TimeNow, TimeWakeup, TimeDelta: TDateTime;
begin
 TimeNow:=Time;
 TimeWakeup:=TimeNow-1/24;
 TimeDelta:=Frac(TimeWakeup-TimeNow+1);
 ShowMessage(FormatDateTime("hh:nn:ss",TimeDelta));
end;


 
faiwer ©   (2009-09-24 11:56) [8]

cорри что вклиниваюсь, а как добавить к переменной TTime или TDateTime ровно 1 день? (24 часа). я делал так: myTime:=myTime + TimeToStr("23:59:59") + TimeToStr("0:0:1");
но это как то по индусски :D


 
Anatoly Podgoretsky ©   (2009-09-24 12:05) [9]

> faiwer  (24.09.2009 11:56:08)  [8]

myTime + 1


 
Плохиш ©   (2009-09-24 12:35) [10]


> ровно 1 день?


> TimeToStr("0:0:1");

Хороша трава...


 
Омлет   (2009-09-24 13:01) [11]

IncDay в студию )))


 
Sha ©   (2009-09-24 13:29) [12]

> Омлет   (24.09.09 13:01) [11]
> IncDay в студию )))

Так то ж моя любимая функция :)
http://guildalfa.ru/alsha/node/6


 
Омлет   (2009-09-24 13:42) [13]

> http://guildalfa.ru/alsha/node/6

О да! В избранное!


 
faiwer ©   (2009-09-24 13:48) [14]

zomg... я думал я индусс, а тут ... ) точно в избранное


 
Franzy   (2009-09-24 13:53) [15]

Блеск!


 
Jeer ©   (2009-09-24 16:05) [16]

Мне понравилось по TNanoTime - так жизненно и позитивно :)



Страницы: 1 вся ветка

Форум: "Начинающим";
Текущий архив: 2009.11.08;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.47 MB
Время: 0.005 c
15-1252269007
Юрий
2009-09-07 00:30
2009.11.08
С днем рождения ! 7 сентября 2009 понедельник


4-1219159140
Dr.Andrew
2008-08-19 19:19
2009.11.08
Как исправить компонент TCoolTrayIcon для выведения юникодов?


2-1253184578
vegarulez
2009-09-17 14:49
2009.11.08
Просьба не банить.


15-1252496141
KilkennyCat
2009-09-09 15:35
2009.11.08
GDI+ . Выбор рефлизации.


1-1222428416
Gurd
2008-09-26 15:26
2009.11.08
Синхронизация двух ScrollBox





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский