Введення та відображення дат та часу – компоненти DateTimePicker, MonthCalendar, Calendar
Стандартний тип дата-час - TDateTime, визначений у модулі System, є дійсне число типу Double, ціла частина якого задає число днів (у тому числі і негативне), що пройшли з 30 грудня 1899, а дробова частина - минулу частку поточного дня . Так, 35065.75 дає 1 січня 1996, 18.00.
У модулі SysUtils визначено низку стандартних функцій роботи з параметрами типу дати-часу.
Додатково матеріал ще один опис Процедур та функцій роботи з датою та часом
Модуль SysUtils (можливо трохи гірше описано чим у попередньому, зате коротко).
Зразок проведення обчислення:
Знайти проміжок між двома датами:
procedure TForm1.Button2Click(Sender: TObject);
var
aDate,bDate: TDate;
diff : Double;
begin
aDate:= form1.DateTimePicker2.Date; //перша дата
bDate:= form1.DateTimePicker3.Date; //друга дата
diff := aDate-bDate ; //різниця дат це число Double
form1.Label17.Caption:= ('day2 - day1 = '+FloatToStr(diff)+' days') ; //відобразимо дату
form1.Label16.Caption:= ('day2 - day1 = '+FloatToStr(round(diff))+' days') ; //заокруглимо
end;
// Знаходимо різницю між датами в місяцях та днях
//monthsDifference := MonthsBetween(date1, date2);
//daysDifference := DaysBetween(date1, IncMonth(date1, monthsDifference));
monthsDifference := MonthsBetween(newDate, dt); //різниця у місяцях
daysDifference := DaysBetween(newDate, IncMonth(dt, monthsDifference));//різниця у датах з урахуванням місяців
form1.Label15.Caption:=s+ 'Кількість місяців: '+ IntToStr( monthsDifference)+ ' Кількість днів: '+ IntToStr (daysDifference);
Немає коментарів:
Дописати коментар