Ehlib组件中有Modified这个属性,它是不是用来判断值是否被改变了,在使用中得不到想要的结果。
如:DBDateTimeEditEh1.Modified在使用中值改变了,得到的还是FALSE,不知为什么?

解决方案 »

  1.   

    这个属性不是Ehlib 带的,是WinControl的,
    你想实现什么目的?
      

  2.   

    如果只是想實現是否值已經改變,可以在OnChange的事件是寫...
      

  3.   

    想做成象Edit1.Modified这种效果,判断值是否改变,不知能否做到?
    在OnChange的事件可以写,但没有上面来得方便。
      

  4.   

    我看了一下 TDBDateTimeEditEh,他的Modified 属性在修改日期的时候还是起作用的,只是你修改完毕后他就又变成false了,不能满足你的要求,
    他是从 TCustomMaskEdit 继承下来的,TMaskEdit 这个属性是正常的。
    我没仔细看代码,但估计是TDBDateTimeEditEh某个地方在处理完日期之后修改了这个属性。如果你想实现你的目的,你可以自己顶一个标识,比如 MyModified, 在 OnChange 里面修改这个标识,
    然后在你需要的地方检查这个MyModified。
      

  5.   

    还一个办法,我觉得更适合你。  if (TDBDateTimeEditEh.Field.OldValue = TDBDateTimeEditEh.Field.Value) then
        Self.Caption:= 'True'
      else
        Self.Caption:= 'False';这个更彻底,只有修改的日期和原来的不同,才会为true,提交了修改后两个值就相等了
      

  6.   

    楼上的可以不过,用query.modified也可以呀
      

  7.   

    TO PAZEE: THANKS VERY MUCH.