Firemonkey TGrid格式化日期

时间:2015-12-30 20:34:06

标签: c++ firemonkey c++builder-xe8 tgrid

我有一个firemonkey TGrid控件似乎检测到单元格内的文本是一个日期时间,然后将自己的格式应用于单元格。例如,我有三个字符串生成并放在网格上的一行。

FSch_Text  = StdDate( FOrd_Evt->SCH_DATE ) + " PM";
FGive_Text = StdDate( FOrd_Evt->GIVE_DATE)  + " PM";
FPost_Text = StdDate( FOrd_Evt->POST_DATE ) + " " + StdTime( FOrd_Evt->POST_TIME );

当这些字符串被放置在网格上的单元格中时,可以预期结果将如下所示:

12/30/2015 PM | 12/30/2015 PM | 12/30/2015 1:00PM

然而,我得到的实际结果是:

PM 12/30/2015 | PM 12/30/2015 | 1:00PM 12/30/2015

(请注意,在第三个字符串中,日期在字符串生成时首先出现,但是时间在网格单元格中首次出现)

我推断网格是通过修改字符串的创建来检测日期并应用自己的格式,如下所示:

FSch_Text  = "Foo " + StdDate( FOrd_Evt->SCH_DATE ) + " PM";
FGive_Text = "Bar " + StdDate( FOrd_Evt->GIVE_DATE)  + " PM";
FPost_Text = "Foobar " + StdDate( FOrd_Evt->POST_DATE ) + " " + StdTime( FOrd_Evt->POST_TIME );

完成此操作后,字符串会出现在他们的单元格中,就像人们期望的那样:

Foo 12/30/2015 PM | Bar 12/30/2015 PM | Foobar 12/30/2015 1:00PM

因此,看起来TGrid控件会自动应用时间先到时的日期格式,然后是日期。

我浏览了TGrid控件的属性/选项列表,但没有找到关于设置日期格式的信息。

我所看到的记录的行为是我错过了吗?如何控制单元格内日期的格式?

0 个答案:

没有答案