强制 TMonthCalendar 显示用户定义的日期格式

Force TMonthCalendar to display user defined date format

默认情况下 TMonthCalendar 以 Windows 控制面板中设置的格式(短日期)显示日期。我想覆盖此设置并强制 TMonthCalendar 始终显示我的格式,而不管 Windows 设置如何。可能吗?

不,此控件是本机 Month Calendar Control. As the documentation 状态的包装器:

The month-calendar control gets its format and all strings from LOCALE_USER_DEFAULT.

据我所知,您无法更改 TMonthCalendar 的日期格式设置。

原因是 TMonthCalendar 实际上只是 OS 日历 API 的包装。这就是为什么不仅 OS 区域设置中设置的日期格式,而且日历的整体外观与您 运行 所在的 OS 的外观相匹配你的申请。

因此,恐怕您将不得不为此查看一些第三方组件。例如,TMS 软件有几个日历和日期时间选择组件作为 TPlannerCalendar 的一部分。