如何将DBEdit中限制为DateTime Field的时间改为军事时间格式,如'2300'?

时间:2013-05-25 09:20:56

标签: delphi delphi-xe2 delphi-xe3

我正在使用Delphi XE3和XE2

我有一个TDBEdit,它绑定到我数据库中的TDateTime字段 我的TDBEdit应以军事格式显示时间2300 但它目前正在显示常规时间10:05:00

我试图将输入掩码设置为类似!9000,但它给了我:00 AM 我已经用输入掩码检查了所有可能的方法,没有用。

无论如何都要克服它?

我无法在任何地方看到Data.DB.TDateTimeField.DisplayFormat属性

screen 01

不在这里

screen 02

2 个答案:

答案 0 :(得分:3)

你不能看到它们,因为你正试图做错了,正如Uwe所说的那样。

创建一个持久字段(双击您的表或查询,并为TDateTime字段添加一个字段),然后在您的代码中使用它。这是一个普通TTable(实际上来自Advantage数据库的TADSTable),TDateTimeField名为DATE_OPEN

DisplayFormat property image

如果您不想创建持久字段,您可以随时进行类型转换(如果您这样做,请确保它是真实的TDateField,否则您最终会访问违规)。另请注意,点)之前有两个.个字符。左边的一个关闭了FieldByName函数调用,第二个完成了对TDateField的类型转换,两个都必须在那里才能使它工作。

enter image description here

然后,您可以将DisplayFormat设置为hhnn,以便分别在上午9:00或晚上9:00接受09002100等时间。

答案 1 :(得分:1)

DisplayFormat属性字段的正确条目是“hhnn”。