четвер, 13 листопада 2025 р.

Введення та відображення дат та часу – компоненти DateTimePicker, MonthCalendar, Calendar

   Введення та відображення дат та часу – компоненти DateTimePicker, MonthCalendar, Calendar

Стандартний тип дата-час - TDateTime, визначений у модулі System, є дійсне  число типу Double, ціла частина якого задає число днів (у тому числі і негативне), що пройшли з 30 грудня 1899, а дробова частина - минулу частку поточного дня . Так, 35065.75 дає 1 січня 1996, 18.00. 

У модулі SysUtils визначено низку стандартних функцій роботи з параметрами типу дати-часу.

Матеріал посилання     опис модуля SysUtils,  розглянуті деякі функції на прикладах. наведено коди прикладів, наведено використання компонента  StatusBar , який знаходиться у вкладці Win32: ( зображено жовтим кольором у коді), розглянуто Компонент Delphi DataTimePicker розташований на сторінці Win32 Палітри компонентів. Він призначений для введення часу та дати, компоненти DateTimePicker, MonthCalendar, Calendar.


Додатково матеріал   ще один опис Процедур та функцій роботи з датою та часом

Модуль 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);


Немає коментарів:

Дописати коментар