我设置了一张表,有一列是datetime型的,执行的时候dbgrideh里该列直接有一个datetimepicker出来。
问题是,这张表是没有内容的,要自己加数据,相当于日期这一列全为空。当我点击datetimepicker选时间,就会报错,is not a valid date and time.
我大概知道问题出在哪里,因为我手动输入一个正确的日期后,datetimepicker可以随便选日期不会出错。
有的软件是一点击datetimepicker的小按钮,该单元格内容就会变成“    -  -  ”,空格刚好是yyyy-mm-dd.这样就不会出错。
我不知道是哪个事件,懂的人请告诉我吧~或者像个更好的办法解决???
再加个问题,如果我输了个错误日期,onsettext会提示是个错误日期,这个时候点datetimepicker选日期是会报错的,有没有办法在这个时候把datetimepicker的按钮灰掉???我真不知道这个表里面凭空出现的datetimepicker该怎么使用???平时都会datetimepicker1.什么这样用的,但那个是凭空出现的啊。。
谢谢好心人~~

解决方案 »

  1.   

    不用管他,调试期间手动输入的话会报日期无效
    编译后,直接执行exe文件即可,没关系的
      

  2.   

    (KAIKAI(开开一心)) 
    我是没管它啊,我自己没手动输入过,直接选择日期也报错is not a valid date and time.
      

  3.   

    你用了onsettext事件的处理过日期了吧,为什么要用onsettext
      

  4.   

    (KAIKAI(开开一心)) 
    我新建了一个工程,一张新表,只有一列是datetime型的,还有一列是identity的,没有onsettext,任何影响因素都不存在
    执行了,点击datetimepicker选择时间照样出错
    网上是有很多说什么第三方控件,如cxgrid之类的,只要类型是datetime就能出现datetimepicker随便选日期。但我现在明显出问题了
    我是windowsXP,SQL2008,DELPHI2010,不可能存在什么系统不兼容问题,为什么网上从来没人说时间不能选?????
      

  5.   

    还是说,有什么东西要设置,或者uses什么?
      

  6.   

    你退出 Delphi,直接运行你编译好的程序就不会有问题了。
      

  7.   

    谢谢(KAIKAI(开开一心))和npkaida
    我是新手,不知道delphi里执行和直接运行exe会不一样。
    npkaida说的很直接,我懂了,谢谢
    (KAIKAI(开开一心))一开始也是这个意思,但我没懂。直接运行exe的时候,有onsettext也是可以的,我输入错误日期再点datetimepicker也不会出错
    真高兴~~