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

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

Работа с датой [D7, Win2k, WinXP]


Kot_ ©   (2006-02-12 15:29:00) 

Доброго времени суток.
Как узнать, в ходит ли определенная дата  в диапазон дат? Например: 15.01.2006 входит ли в диапазон от 10.01.2006 до 20.02.2006.
И еще один вопрос, как можно увеличить дату на 1 месяц?


Marser   (2006-02-12 17:57:00) [1]

> Как узнать, в ходит ли определенная дата  в диапазон дат?
> Например: 15.01.2006 входит ли в диапазон от 10.01.2006
> до 20.02.2006.

Также, как и с обычными числами. TDateTime объявлен:
type TDateTime = type Double;
Поэтому с ним можно работать и как с обычным действительным числом двойной точности, где целая часть указывает на число дней с 30.12.1899.


Virgo_Style   (2006-02-12 16:16:00) [2]

IncDay (c) нужное количество раз :o)


vovnuke   (2006-02-12 16:03:00) [3]

IncMonth(const DateTime: TDateTime, [NumberOfMonth: Integer = 1])


tesseract   (2006-02-12 15:40:00) [4]

DAte можно сравнивать.
Наприме
if (DAta<CurrentDate ) or (DAte>CurrentDAte) then .....

Можно выяснить сколько дней прошло между датами

function DaysBetween(const ANow, AThen: TDateTime): Integer;

Можно раскодировать DAte в год/месяц/день

procedure DecodeDate(Date: TDateTime; var Year, Month, Day: Word);

И закодировать обратно

function EncodeDate(Year, Month, Day: Word): TDateTime;

Все функции находяться в SysUtils.
В каком напралении думать понятно, надеюсь :-)


Наверх

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