Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2006.08.13;
Скачать: CL | DM;

Вниз

Системное время и работа с ним   Найти похожие ветки 

 
Tort   (2006-07-23 19:18) [0]

Добрый вечер, МАСТЕРА!
Подскажите пожалуйста такую вот вещь. Пишу прогу, но для "формальности" решил добавить немного живности - считает, сколько времени она (прога) отработала.
Вопрос: как можно к времени, например: 12:45:00 прибавить отработанные 15 минут? В итоге должно получиться 13:00:00...

Вот такая вот задумка, но пока ничего неп олучилось :(


 
Anatoly Podgoretsky ©   (2006-07-23 19:26) [1]

В сутках 24*60 минут. Дальше голая математика.


 
Desdechado ©   (2006-07-23 19:30) [2]

Главное - не перепутать понятие длины интервала времени и отметки времени на оси.


 
Tort   (2006-07-23 19:32) [3]

Анатолий спасибо за ответ! Я не могу понять только одного.
С помощью TimeToStr(now) я получаю время ПК. Проходит ещё 15 минут например и в эту строчку (Label) прибавляется эти 15 минут.
Прошу помочь мне хотябы маленьким примером. Я начинающий и изучаю работу с таймером.


 
Desdechado ©   (2006-07-23 19:37) [4]

> в эту строчку (Label) прибавляется
Еще раз вызови TimeToStr


 
Tort   (2006-07-23 19:40) [5]

То и дело вызывать TimeToStr.....
Вы имеете в виду каждую секунду вести такую обработку?
Тогда как я понимаю нужнео два таймера, один на старте получает текущее время, а второй считает и прибавляет? Правильно ли я излагаю мысли?


 
Anatoly Podgoretsky ©   (2006-07-23 19:40) [6]

Примером чего, как разделить 1 на 24*60 и затем умножить на 15 и прибавить это к начальной дате?
T := T + 1/24/60*15


 
Anatoly Podgoretsky ©   (2006-07-23 19:41) [7]

Tort   (23.07.06 19:40) [5]
Может и правильно выражаешь, но не понятно.


 
Tort   (2006-07-23 19:45) [8]

Примером чего, как разделить 1 на 24*60 и затем умножить на 15 и прибавить это к начальной дате?
T := T + 1/24/60*15


Ну типа того. Вы почти угадали мои мысли :)

Спасибо! Сейчас покопаюсь в коде.


 
Desdechado ©   (2006-07-23 19:46) [9]

> То и дело вызывать TimeToStr
Раз в 15 мин.

> каждую секунду вести такую обработку
Настроить интервал срабатывания на 15 мин. Или запомнить в переменную текущее время, а раз в секунду (например), сравнивать сохраненное с новым на предмет 15 мин разницы. Естественно, в виде TDateTime, а не строки.


 
KilkennyCat ©   (2006-07-23 19:49) [10]

А еще есть такая функция, как ГетТикКоунт. Вызвав ее в начале работы один раз, в дальнейшем легко узнать, сколько программа проработала. в миллисекундах.

GetTickCount


 
Tort   (2006-07-23 19:50) [11]

ВСЕМ ОГРОМНОЕ СПАСИБО ЗА СОВЕТЫ И ПОМОЩЬ !!!!


 
Anatoly Podgoretsky ©   (2006-07-23 19:51) [12]

KilkennyCat ©   (23.07.06 19:49) [10]
А если вызвать GetPerformaceCounter то можно узнать и в пикосекундах


 
KilkennyCat ©   (2006-07-23 19:58) [13]

> [12] Anatoly Podgoretsky ©   (23.07.06 19:51)


Полезная вещь!


 
Belorus ©   (2006-07-23 20:17) [14]

RTFM по RDTSC


 
Anatoly Podgoretsky ©   (2006-07-23 20:31) [15]

Belorus ©   (23.07.06 20:17) [14]
Это не требуется, речь о подобном может пойти только в критических приложениях, GetPerformaceCounter выдает теже тики, только минимальная величина поменьше.



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

Текущий архив: 2006.08.13;
Скачать: CL | DM;

Наверх




Память: 0.5 MB
Время: 0.07 c
3-1149165477
prisoner849
2006-06-01 16:37
2006.08.13
Формирование ConnectionString при старте программы


3-1149598869
RDA
2006-06-06 17:01
2006.08.13
Многоколончатый отчет (Fast Report 3)


2-1153562509
S46E
2006-07-22 14:01
2006.08.13
WinExec и Ping


2-1153587506
AlexeyT
2006-07-22 20:58
2006.08.13
Как определить высоту строки Memo, зная размер шрифта?


15-1153306535
Prohodil Mimo
2006-07-19 14:55
2006.08.13
Есть ли Skype-плагин к Миранде?