Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Время [D7, XP]


MrProper ©   (2006-10-10 03:23:00) 

Есть три переменных. В первой - текущее время, во второй, например, 8:40 а в третьей кол-во минут, например, 5.

Нужно если до 8:40 останется 5 минут, то вывести сообщение.


ЮЮ   (2006-10-10 10:45:00) [1]

8:40 привести к части суток:
var
 timeX: Double;

 time :=  8 / 24 + 40 / 24 / 60;

5 минут привести к части суток:
var
 alertTime := 5 / 24/ 60;

Тогда
 curTime: TDateTime будет в диапазоне timeX - alertTime ...  timeX,
когда в этом диапазоне будет находиться его дробная часть Frac(curTime)


DimonS   (2006-10-10 08:32:00) [2]

25/60/24 - так понятнее? :)


Джо   (2006-10-10 04:13:00) [3]

> [11] MrProper   (10.10.06 03:56)
> И еще один вопрос у меня:
>
> допустим в Edit1.text хранится строка 25
>
> Как мне преобразовать эту строку в минуты типа TDateTime?
> ?

Целая часть значения типа TDateTime — это количество дней, прошедшее с 12.30.1899, дробная — часть 24-часового дня. Как думаешь, можно ли преобразовать просто "минуты" в такой тип данных? И не говорите мне, что есть EncodeDateTime...


MrProper   (2006-10-10 03:56:00) [4]

И еще один вопрос у меня:

допустим в Edit1.text хранится строка 25

Как мне преобразовать эту строку в минуты типа TDateTime??


Ketmar   (2006-10-10 03:55:00) [5]

>[2] MrProper 10-Oct-2006, 03:33
>Я спрашиваю серъезно.
покажи мне в [0] хоть один вопрос. нет их там. это набор утверждений. какого ответа тебе хочется, если ты даже не удосужился вопрос сформулировать? яхдр...


MrProper   (2006-10-10 03:48:00) [6]


> ЮЮ ©   (10.10.06 03:46) [8]
> 8:40 - какого дня?


Без разницы. Просто время.


ЮЮ   (2006-10-10 03:46:00) [7]

8:40 - какого дня? Лучше срвзу привести привести к TDateTime, тогда

if  <текущее время> > <8:40>  -  <5> / 1440 then
 1440 - минут в сутках. А в TDateTime - целая часть - сутки, дробная часть - часть суток, т.е  <5> / 1440  - 5 минут, <5> / 24  - 5 часов


MrProper   (2006-10-10 03:44:00) [8]


> Джо ©   (10.10.06 03:42) [6]


Ааа.. идею понял, спасибо.


Джо   (2006-10-10 03:42:00) [9]

> [5] MrProper   (10.10.06 03:37)
> Ладно, тогда подскажите какими функциями воспользоваться.

SetTimer из Win32 API. Но проще в использовании — [4].


MrProper   (2006-10-10 03:37:00) [10]

Текущее время - TDateTime
8:40 - String
5 - String

Ладно, тогда подскажите какими функциями воспользоваться.


ЮЮ   (2006-10-10 03:36:00) [11]

типы перменных для <текущее время> , <8:40>  и  <5> ?


Джо   (2006-10-10 03:36:00) [12]

Есть компонент TTimer, подумав, можно заставить его выполнить задуманное.


MrProper   (2006-10-10 03:33:00) [13]

Остроумно, но для этого есть другой форум. Я спрашиваю серъезно.


Ketmar   (2006-10-10 03:27:00) [14]

разрешаю. это не криминал.


Наверх

Титульная страница Поиск, карта сайта Написать письмо