18.3.10. TDateTimePicker - ввод и отображение даты/времени
Компонент предназначен для ввода и/или отображения даты или времени. На рис. 18.26 показаны различные варианты использования компонента.
Рис. 18.26. Примеры использования компонента TDateTimePicker
При показе даты в режиме DateMode=dmComboBox календарь можно не раскрывать и установить дату вручную в верхнем окне. Это удобно, если нужно установить сразу и день, и месяц, и год. На раскрытом календаре изменить месяц можно небольшими кнопками вверхней части компонента. Календарь закрывается после выбора даты или при щелчке по раскрывающей кнопке. Установив в свойство Kind значение dtkTime, можно заставить компонент отображать время (справа на рисунке). Это время в момент установки компонента на форму соответствует системному времени, и в дальнейшем его можно изменить, задав новое значение в свойство Time.
Свойства компонента:
TDTCalAlignment = (dtaLeft, dtaRight) ; |
Определяет положение раскрывающегося календаря: dtaLeft - слева от компонента; |
|
property CalAlignment: TDTCalAlignment; |
dtaRight - справа от компонента. Учитывается только ДЛЯ Kind = dtkDate и Date-Mode = dmComboBox |
|
property CalColors: TDateTimeColors; |
С календарем связан объект класса TDateTimeColors, свойства которого определяют цвета календаря |
|
property Checked: Boolean;
|
Если Checked=True И ShowCheckBox=True, независимый переключатель рядом с датой (временем) будет иметь состояние Выбрано |
|
property Date: TDate;TDTDateFormat = (dfShort,dfLong) ; property DateFormat: TDTDateFormat; |
Содержит введенную дату Определяет формат показа даты: df short -08. 09. 99; dfLong-8 Сентябрь 1999г. |
|
TDTDateMode = (dmComboBox, dmUpDown) ; property DateMode: TDTDateMode; |
Определяет способ выбора даты: dmComboBox - с помощью раскрывающегося ка лендаря; dmUpDown - с помощью встроенного объекта TupDown |
|
property Format: String;
|
Определяет формат вывода даты и времени (см. табл. 7.8 в гл. 7) |
|
TDateTimeKind = (dtkDate, dtkTime); property Kind: TDateTimeKind; |
Определяет содержимое компонента: dtkDate -дата; dtkTime - время |
|
property MaxDate: TDate; |
Определяет максимальную дату, которую может выбрать иди ввести пользователь |
|
property MinDate: TDate;
|
Определяет минимальную дату, которую может выбрать или ввести пользователь |
|
property Parselnput: Boolean; |
Если True, возникает событие OnUserlnput при каждом вводе пользователя в окне редактора |
|
property ShowCheckbox: Boolean; |
Если True, рядом с датой (временем) вставляется независимый переключатель |
|
property Time: TTime; |
Содержит введенное пользователем время |
Для компонента определены следующие события: |
||
property OnChange: TNotifyEvent;
|
Возникает при любом изменении содержимого компонента |
|
property OnCloseUp: TNotifyEvent; |
Возникает при закрытии календаря |
|
property OnDropDown: TNotifyEvent; |
Возникает при открытии календаря
|
|
TParseInputEvent = procedure (Sender: TObject; const User-String: String” var DateAndTime: TDateTime; var AllowChange: Boolean) of objects-property OnUserInput: TDTParseIn-putEvent; |
Возникает при ручном вводе в окне редактора, если ParseInput=True.UserString -введенная пользователем строка; DateAndTime - значения свойств Date и Time. В параметре AllowChange обработчик разрешает или запрещает изменение даты или времени |