Содержание
- Function Date: TDateTime;
- Function DateTimeToStr(DateTime: TDateTime): String;
- Function DateToStr(Date: TDateTime): String;
- Function DayOfWeek(Date: TDateTime): Integer;
- Procedure DecodeDate(Date: TDateTime; var Year, Month, Day: Word);
- Procedure DecodeTime(Time: TDateTime; var Hour, Min, Sec, MSec: Word);
- Function EncodeDate(Year, Moth, Day: Word): TDateTime;
- Function EncodeTime(Hour, Min, Sec, MSec: Word): TDateTime;
- Function Now: TDateTime;
- Function StrToDate(const S: String): TDateTime;
- Function StrToTime(Const S: String): TDateTime;
- Function Time: TDateTime;
- Function TimeToStr(Time: TDateTime): String;
Function Date: TDateTime;
Возвращает текущую дату.
Function DateTimeToStr(DateTime: TDateTime): String;
Преобразовывает параметр типа TDateTime, содержащий дату и время, в строку. Если параметр DateTime не содержит значения даты, дата устанавливается в 00/00/00. Если параметр DateTime не содержит значения времени, время устанавливается в 00:00:00.
Function DateToStr(Date: TDateTime): String;
Преобразовывает параметр типа TDateTime, содержащий дату, в строку.
Преобразование использует формат, определенный глобальной переменной ShortDateFormat.
Function DayOfWeek(Date: TDateTime): Integer;
Возвращает день недели определенной даты как целое число между 1 и 7. Воскресенье — первый день недели, и суббота — седьмой.
Procedure DecodeDate(Date: TDateTime; var Year, Month, Day: Word);
Извлекает дату из формата TDateTime и помещает год, месяц и день соответственно в переменные Year, Month и Day.
Procedure DecodeTime(Time: TDateTime; var Hour, Min, Sec, MSec: Word);
Извлекает время из формата TDateTime и помещает часы, минуты, секунды, и миллисекунды соответственно в переменные Hour, Min, Sec и MSec.
Function EncodeDate(Year, Moth, Day: Word): TDateTime;
Возвращает дату в формате TDateTime, полученную из значений параметров Year, Month и Day.
Year должен быть между 1 и 9999.
Допустимые значения Month — от 1 до 12.
Допустимые значения Day — от 1 до 28, 29, 30, или 31, в зависимости от значения Month. Например, возможные значения Day в течение второго месяца (февраля) — от 1 до 28, или от 1 до 29, в зависимости от того, определяет или нет значение Year високосный год.
Если значения находятся вне диапазона, возникает исключительная ситуация EConvertError. Возникающее в результате значение — единица плюс число дней между 30/12/1899 и данной датой.
Function EncodeTime(Hour, Min, Sec, MSec: Word): TDateTime;
Возвращает время в формате TDateTime, полученное из значений параметров Hour, Min, Sec и MSec.
Если значение типизированной константы Time24Hour ложно (False), значения Hour лежат в пределах от 0 до 12, если истинно (True) — от 0 до 23.
Допустимые значения Min и Sec — от 0 до 59. Допустимые значения MSec — от 0 до 999.
Если значения находятся вне диапазона, возникает исключительная ситуация EConvertError.
Function Now: TDateTime;
Возвращает текущую дату и время в формате TDateTime (дата + время).
Function StrToDate(const S: String): TDateTime;
Преобразовывает строковое представление даты в формат TDateTime. Дата в параметре S должна быть записана по правилам Windows, т.е. должна состоять из двух или трех чисел, отделяемых символом, опреде-ленным в глобальной переменной DateSeparator. Порядок следования месяца, дня и года определен в глобальной переменной ShortDateFormat. Возможные комбинации — m/d/y, d/m/y, и y/m/d.
Если строка содержит только два числа, это интерпретируется как дата (m/d или d/m) в текущем году. Значения Year между 0 и 99 означают год в текущем столетии.
Если строка содержит дату в неверном формате, возбуждается исключительная ситуация EConvertError.
Function StrToTime(Const S: String): TDateTime;
Преобразовывает строковое представление времени в формат TDateTime.
Строка должна состоять из двух или трех чисел, отделяемых символом, определенным в глобальной переменной TimeSeparator. Числа представляют собой часы, минуты, и (необязательно) секунды, в соответствующем порядке.
Если строка содержит время в неверном формате, возбуждается исключительная ситуация EConvertError.
Function Time: TDateTime;
Возвращает текущее время.
Function TimeToStr(Time: TDateTime): String;
Преобразовывает время из формата TDateTime в строковое представление.
Преобразование использует формат, определенный в глобальной переменной LongTimeFormat. Вы можете изменять формат отображения времени, изменяя значения переменных даты и времени (или используя Панель управления Windows).
CurrentYear: Word;
Возвращает полное обозначение (четыре цифры) текущего года.
Date : TDateTime
Возвращает текущую дату.
DateOf(const AValue: TDateTime): TDateTime
Выделяет из AValue только часть, связанную датой, обнуляя время.
DateTimeToFileDate(DateTime: TDateTime): Integer
Преобразует дату и время TDateTime в формат операционной системы, используемый при задании времени создания и модификации файлов.
DateTimeToSQLTimeStamp(const DateTime: TDateTime): TSQLTimeStamp
Преобразует дату и время TDateTime в формат TSQLTimeStamp .
DateTimeToStr (DateTime: TDateTime): string
Преобразует дату и время DateTime в строку.
DateTimeToString fvar Result: string; const Format: string;
DateTime: TDateTime)
Преобразует DateTime с помощью строки форматирования Format в строку Result.
DateTimeToSystemTime(DateTime: TDateTime;
var SystemTime: TSystemTime)
Преобразует DateTime типа TDateTime в тип TSystemTime . Используемый в API Windows 32.
DateTimeToTimeStamp(DateTime: TDateTime): TTimeStamp Преобразует DateTime типа TDateTime в тип TTimeStamp .
DateToStr(Date: TDateTime): string
Преобразует дату DateTime в строку, используя формат, заданный глобальной переменной ShortDateFormat.
DayOf f(const AValue: TDateTime): Word
Извлекает день месяца из даты AValue типа TDateTime. Идентична функ ции DavOfTheMonth.
DayOfTheMonth f(const AValue: TDateTime): Word
Извлекает день месяца из даты AValue типа TDateTime. Идентична функции DayOf .
DayOfTheWeek(const AValue: TDateTime): Word
Возвращает день недели (1 — понедельник, 7 — воскресенье).
DayOfTheYear(const AValue: TDateTime): Word;
Возвращает число дней между датой AValue и 31 декабря предыдущего года.
DayOfWeek (Date: TDateTime): Integer
Возвращает день неде ли (1 — воскресенье, 7 — суббота).
DaysBetween f(const ANow, AThen: TDateTime): Integer
Возвращает число полных суток между двумя указанными датами ANow и AThen типа TDateTime.
DaysInAMonth(const AYear, AMonth: Word): Word
Возвращает число дней в указанном месяце AMonth в указанном году AYear.
DaysInYear(const AValue: TDateTime): Word
Возвращает число дней в году, к которому относится указанная дата AValue.
DaySpan (const ANow, AThen: TDateTime): Double
Возвращает действительное число, равное числу суток между двумя указанными датами ANow и AThen типа TDateTime, учитывая неполные сутки. В этом отличие данной функции от DaysBetween.
DecodeDate (Date: TDateTime; var Year, Month, Day: Word)
Разбивает дату Date на год — Year, месяц — Month и день — Day.
DecodeDateDay(const AValue: TDateTime; out AYear, ADayOfYear: Word)
Возвращает год AYear, к которому относится дата AValue, и число дней ADayOfYear в этом году.
DecodeDateFully(const DateTime: TDateTime; var Year, Month, Day,
DOW: Word): Boolean
Выделяет из даты DateTime год Year, месяц Month, день Day, день недели DOW. Если год високосный, возвращается true.
DecodeDateMonthWeek(const AValue: TDateTime;
out AYear, AMonth, AWeekOfMonth, ADayOfWeek: Word)
Возвращает год AYear, месяц AMonth, неделю месяца AWeekOfMonth, день недели ADayOfWeek (1 — понедельник) даты AValue.
DecodeDateTime(const AValue: TDateTime; out AYear, AMonth, ADay,
AHour, AMinute, ASecond, AMilliSecond: Word)
Возвращает год AYear, месяц AMonth, день ADay, час AHour, минуту AMinute, секунду ASecond, число миллисекунд AMilliSecond указанной даты и времени AValue.
DecodeDateWeek(const AValue: TDateTime;
out AYear, AWeekOfYear, ADayOfWeek: Word)
Возвращает год AYear, неделю года AWeekOfYear и день недели ADayOfWeek (1 — понедельник) указанной даты AValue.
DecodeDayOfWeekInMonth(const AValue: TDateTime;
out AYear, AMonth, ANthDayOfWeek, ADayOfWeek: Word)
Возвращает год AYear, месяц AMonth, который раз ANthDayOfWeek встречается в месяце данный день недели, день недели ADayOfWeek (1 — понедельник).
DecodeTime (Time: TDateTime; var Hour, Min, Sec, MSec: Word)
Разбивает время Time на час — Hour, минуту — Min, секунду — Sec, миллисекунду — MSec.
EncodeDate fYear. Month, Day: Word): TDateTime
Объединяет год Year, месяц Month и день Day в значение типа TDateTime.
EncodeDateDay(const AYear, ADayOfYear: Word): TDateTime
Формирует значение TDateTime по заданному году AYear и дню года ADayOfYear .
EncodeDateMonthWeek(const AYear, AMonth, AWeekOfMonth: Word;
const ADayOfWeek: Word = 1): TDateTime
Формирует значение TDateTime по заданному году AYear, месяцу AMonth, неделе месяца AWeekOfMonth и дню недели ADayOfWeek.
EncodeDateTime(const AYear, AMonth, ADay, AHour,
AMinute, ASecond, AMilliSecond: Word):TDateTime
Формирует значение TDateTime по заданному году AYear, месяцу AMonth, дню ADay, часу AHour, минуте AMinute, секунде ASecond, миллисекунде AMilliSecond.
EncodeDateWeek(const, AWeekOfYear: Word;
const ADayOfWeek: Word =1): TDateTime
Формирует значение TDateTime по заданному году AYear и указанному дню ADayOfWeek указанной недели AWeekOfYear.
EncodeDayOfWeekInMonth(const AYear, AMonth,
ANthDayOfWeek, ADayOfWeek: Word): TDateTime
Формирует значение TDateTime по заданному году AYear, месяцу AMonth, дню недели ADayOfWeek и тому, который раз ANthDayOfWeek
этот день встречается в данном месяце.
EncodcTime (Hour. Min, Sec, MSec: Word): TDateTime
Объединяет час Hour, минуту Min, секунду Sec и миллисекунду MSec
в значение типа TDateTime.
EndOfADay(const AYear, ADayOfYear: Word): TDateTime
Возвращает время окончания указанного дня ADayOfYear указанного года AYear.
EndOfADay(const AYear, AMonth, ADay: Word): TDateTime
Возвращает время окончания указанного дня ADay указанного месяца AMonth указанного года AYear.
EndOfAMonth(const AYear, AMonth: Word): TDateTime
Возвращает время окончания последнего дня указанного месяца AMonth указанного года AYear.
EndOfAWeek(const AYear, AWeekOfYear: Word;
const ADayOfWeek: Word = 7): TDateTime
Возвращает время окончания указанного дня ADayOfWeek указанной недели AWeekOfYear указанного года AYear.
EndOfAYear(const AYear): TDateTime
Возвращает время окончания указанного года AYear.
EndOfTheDay(const AValue: TDateTime): TDateTime
Возвращает время окончания указанной даты AValue.
EndOfTheMonth(const AValue: TDateTime): TDateTime
Возвращает время окончания месяца, содержащего указанную дату AValue.
EndOfTheWeek(const AValue: TDateTime): TDateTime
Возвращает время окончания недели, содержащей указанную дату
AValue. EndOfTheYear(const AValue: TDateTime): TDateTime
Возвращает время окончания года, содержащего указанную дату
AValue. FormatDateTime (const Format: string; DateTime: TDateTime): string
Возвращает значение DateTime, преобразованное в строку с помощью строки форматирования Format.
. как использовать datetime delphi пример функция даты и времени паскаль tdatetime преобр дату delphi функции даты дату на три месяца назад delphi

Стандартный тип дата-время — TDateTime, определенный в модуле System, представляет собой вещественное число типа Double, целая часть которого задает число дней (в том числе и отрицательное), прошедших с 30 декабря 1899 г., а дробная часть — прошедшую долю текущего дня. Так, 35065.75 дает 1 января 1996 г., 18.00. Следует иметь в виду, что символьное представление даты-времени определяется региональной установкой Windows. Здесь под региональной установкой понимается следующее. В разных странах даты, время, а также вещественные числа записываются по-разному. Например, в одних странах в вещественных десятичных числах дробная часть отделяется от целой точкой, а в других — запятой (так, кстати, обозначаются десятичные числа и в нашей стране, однако пользоваться такой записью в тексте самой программы, написанной на Object Pascal, нельзя). По-разному записываются дата и время. Windows позволяет привести символьное представление таких параметров в соответствие с принятыми в данной стране правилами. Delphi может использовать эти установки для соответствующего представления таких параметров. Так, для России следует вводить информацию о дате и времени в виде dd.MM.yy H:mm:ss, где dd — день месяца; ММ — месяц; уу — год; Н — часы; mm — минуты; ss — секунды.
При задании значения даты-времени следует обратить внимание не только на сами значения, но и на знаки препинания. Несущественные части даты-времеи (например, секунды, минуты, часы) можно справа отбросить. В этом случае считается, что соответствующая часть равна нулю. Если в дате-времени отброшено еще и значение года, считается, что имеется в виду текущий год. Обычно тип дата-время используется в параметрах вариантного типа как один из допустимых вариантов, но может использоваться и самостоятельно для фиксации информации о времени.
Примечание. Следует иметь в виду, что при записи года двумя последними цифрами фактический год зависит от текущего года и глобальной переменной заданной в Delphi — TwoDigitYearCenturyWindow. По умолчанию эта переменная имеет значение, равное 50, что означает, что в конце этого столетия и начале следующего задаваемые двумя цифрами годы будут относиться к XX в., если число несколько больше 50, и к XXI в., если число несколько меньше 50.
В модуле SysUtils определен ряд стандартных функции работы с параметрами типа даты-времени.
- Time — текущее время. Функция возвращает текущее значение времени в формате TTime.
- Date — текущая дата. Функция возвращает текущее значение даты в формате TDate.
- Now — текущая дата и время. Функция возвращает текущее значение даты и времени в формате TDateTime.
- DateTimeToStr (DateTime) — символьное представление даты и времени. Функция формирует для параметра DateTime типа TDateTime символьное представление даты и времени с учетом региональной установки Windows и возвращает полученную строку в качестве результата своей работы.
- DateTimeToString (Result, Format, DateTime) — сформатированное символьное представление даты и времени. Процедура формирует символьное представление параметра DateTime типа TDateTime с учетом формата, заданного строкой Format, и помещает результат в строку Result.
- DateToStr (Date) — символьное представление даты. Функция формирует для параметра Date типа TDateTime или TDate символьное представление даты с учетом региональной установки Windows и возвращает полученную строку в качестве результата своей работы.
- DayOfWeek (Date) — день недели. Функция возвращает день недели заданной даты Date типа TDateTime или TDate в виде числа от 1 до 7, причем нумерация начинается с воскресенья.
- TimeToStr (Time) — символьное представление времени. Функция формирует для параметра Time типа TDateTime или TTime символьное представление времени с учетом региональной установки Windows и возвращает полученную строку в качестве результата своей работы.
- DecodeDate (Date, Year, Month, Day) — выделение в дате года, месяца, дня. Процедура выделяет из параметра Date типа TDateTime или TDate год, месяц, день и помещает их соответственно в параметры Year, Month и Day типа Word.
- DecodeTime (Date, Hour, Min, Sec, MSec) — выделение во времени часа, минуты, секунды и числа миллисекунд. Процедура выделяет из параметра Date типа TDateTime или TTime час, минуту, секунду и число миллисекунд и помещает их соответственно в параметры Hour, Min, Sec и MSec типа Word.
- EncodeDate (Year, Month, Day) — формирование даты из компонент. Функция формирует из заданного года, месяца и дня (заданных в параметрах Year, Month, Day) комплексный параметр типа TDateTime и возвращает его как результат работы.
- EncodeTime (Hour, Min, Sec, MSec) — формирование времени из компонент. Функция формирует из заданных часа, минуты, секунды и числа миллисекунд (заданных в параметрах Hour, Min, Sec, MSec) комплексный параметр типа TDateTime и возвращает его как результат работы.
- FormatDateTime (Format, DateTime) — сформатированное символьное представление даты и времени. Функция формирует символьное представление параметра DateTime типа TDateTime с учетом формата, заданного строкой Format, и возвращает полученную строку как результат своей работы.
- StrToDate (S) — преобразование символьного представления даты в тип TDateTime. Функция преобразовывает символьное представление даты, находящееся в строке S, в формат TDateTime или TDate и возвращает полученную величину как результат своей работы. Дата должна быть задана в соответствии с региональной установкой Windows.
- StrToTime (S) — преобразование символьного представления времени в тип TDateTime. Функция преобразовывает символьное представление времени, находящееся в строке S, в формат TDateTime или TTime и возвращает полученную величину как результат своей работы. Время должно быть задано в соответствии с региональной установкой Windows.
- StrToDateTime (S) — преобразование символьного представления даты и времени в тип TDateTime. Функция преобразовывает символьное представление даты и времени, находящееся в строке S, в формат TDateTime и возвращает полученную величину как результат своей работы. Дата и время должны быть заданы в соответствии с региональной установкой Windows.
Тепеть разберем некоторые функции на примерах.
| DateTimeToString |
| DateTimeToStr |
| DateToStr |
| TimeToStr |
А сейчас попробуем написать часы, применяя описанные выше процедуры и функции. С созданием цифровых часов не должно возникнуть никаких проблем, а вот с аналоговыми нужно повозиться. Но мы, как настоящие программисты, не боимся трудностей, и возьмемся за реализацию этой задачи. И первое, что мы сделаем при запуске программы, узнаем координаты центра часов и вычислим радиус.
Обновлять информацию о времени будем, используя таймер, и сделаем возможность запуска/остановки часов. Запускать и останавливать таймер будем следующей процедурой.
Таймер, через определенные интервалы времени, будет получать информацию о дате и времени, выводить ее, и вызывать процедуру рисования аналоговых часов.
А вот и сама процедура рисования аналоговых часов.
Из примера видно, что сделать часы, в том числе и аналоговые, не представляет из себя ничего сложного. Я думаю, не возникнет больших проблем при разборе данного примера.





