如何在 Delphi 10.2 的 TCalendarView 组件上限制 MinDate 和 MaxDate?

Posted

技术标签:

【中文标题】如何在 Delphi 10.2 的 TCalendarView 组件上限制 MinDate 和 MaxDate?【英文标题】:How to Limit MinDate and MaxDate on TCalendarView component on Delphi 10.2? 【发布时间】:2019-06-17 02:17:36 【问题描述】:

我想限制 Delphi 10.2 Tokyo“Windows 10” 调色板的 TCalendarView 组件的范围日期。 MinYearMaxYear 属性对我来说还不够,因为我想限制日期范围。 是否可以在不覆盖祖先方法的情况下做到这一点?如果不是,哪种方法可能最适合拦截超出范围日期的选择和设计

【问题讨论】:

您的 Delphi 版本包括 Konopka Signature VCL 控件(以前称为 Raize 组件),这些组件比标准控件具有许多额外的功能/属性。 @Brian,是的,我知道我已经安装了 Konopka,但是视觉上 TCalendarView 具有现代视觉效果,我喜欢它。 不确定这是否有效,但您可以为 OnDrawDayItem 链接一个事件,然后为超出您的范围的天数绘制一个空白矩形。 我觉得奇怪的是 Embarcadero 不会公开此功能,因为底层 WinRT CalendarView 控件确实具有 MinDateMaxDate 属性,而较旧的 TDateTimePicker 具有此功能。 【参考方案1】:

看起来 Delphi 10.3 及更高版本具有以下属性:

CalendarView1.MinYear
CalendarView1.MinYear

【讨论】:

以上是关于如何在 Delphi 10.2 的 TCalendarView 组件上限制 MinDate 和 MaxDate?的主要内容,如果未能解决你的问题,请参考以下文章

DELPHI10.2开发的跨平台中间件

将 ansichar 数组复制到 char delphi 10.2 数组

delphi 10.2安装问题

delphi7 Delhi 10.2 sgcWebSockets 控件安装.

使用delphi 10.2 开发linux 上的Daemon

Delphi10.2 Tokyo试用