Главная страница
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.49 MB
Время: 0.057 c
2-1153888388
LexXL
2006-07-26 08:33
2006.08.13
отловить handle


2-1153730953
koha
2006-07-24 12:49
2006.08.13
Помогите вывести AVI на форму


2-1153734378
Михаил И.
2006-07-24 13:46
2006.08.13
ListSource


2-1153655617
vain
2006-07-23 15:53
2006.08.13
Сливание вспомогательных файлов


2-1153744558
UMU
2006-07-24 16:35
2006.08.13
Значение "Edit.Text" в отчете "FastReports"