1

我有一个 firemonkeyTGrid控件,它似乎正在检测单元格内的文本是日期时间,然后将其自己的格式应用于单元格。例如,我生成了三个字符串并将它们放入网格中的一行中。

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控件的属性/选项列表,但找不到有关设置日期格式的任何信息。

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

4

0 回答 0