0

我正在使用 Delphi XE3 和 XE2

我有一个 TDBEdit,它绑定到我的数据库中的 TDateTime 字段。
我的 TDBEdit 应该以军用格式显示时间,即 2300,但它当前显示的是常规时间 10:05:00 AM

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

有没有办法克服它?

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

屏幕01

也不在这里

屏幕 02

4

2 回答 2

3

正如 Uwe 所说,你看不到它们是因为你试图做错事。

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

DisplayFormat 属性图像

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

在此处输入图像描述

然后,您可以将 设置DisplayFormathhnn分别接受 9:00 AM 或 9:00 PM 之类09002100时间。

于 2013-05-25T14:40:48.537 回答
1

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

于 2013-05-25T09:44:10.920 回答