我正在使用Delphi 2007。
我需要编写一个FormatDateTime函数,它始终将01/01 /返回到TDateEdit框(DevExpress组件)作为EditValue。
我已经尝试过了......
tcxDateEdit1.EditValue := FormatDateTime('01/01/'+ 'yyyy',now);
和
tcxDateEdit1.EditValue := FormatDateTime('01/01/yyyy',Now);
但它们都没有奏效。 它导致将string类型的变量转换为double的错误。 “无法将类型(String)的变体转换为类型(Double)”
答案 0 :(得分:5)
我只是在猜测,但您的EditValue
属性似乎属于TDateTime
(或TDate
)类型(而FormatDateTime
则返回string
)。如果这是真的,你可以尝试以下方法:
tcxDateEdit1.EditValue := EncodeDate(YearOf(Now), 1, 1);
另请参阅:YearOf,EncodeDate,FormatDateTime文档