由于一些原因我没有使用maskedit来输入日期,使用edit来输入日期,
但是如何对edit中的文本进行日期有效性的检查呢,用什么函数?

解决方案 »

  1.   

    try
      strtodate(trim(edit1.text))
    except
      showmessage('asdf');
    end;
    也可用maskEdit
      

  2.   

    weitao999(涛涛)说的方法也是可以的。你可以按他的方案自己写一个小的函数。
      

  3.   

    function IsValidDate(str: string): boolean;
    begin
      result := True;
      if Trim(str) = '' then // 传入字符串为空,认为有效,可以自己定义空字符串是否有效
        exit;
      try
        strtodate(trim(edit1.text))
      except
        result := False;   
      end;
    end;
      

  4.   

    你下载一个日期空间TEditDate,省得编写代码了
      

  5.   

    我认为是错的。try
      strtodate(edit1.text)
    except
      showmessage('asdf');
    end;既然是输入就应保留原来的值
      

  6.   

    有点问题,输入错误日期后,总会弹出两个信息框,一个是自己定义的,一个是"xxx is not a valid date!",该怎么解决?
      

  7.   

    怎么的,执行exe还是出问题,请大家再帮帮忙.程序里一定要屏蔽这样的错误阿
      

  8.   

    不在调试环境(delphi)下运行,就不会出了
      

  9.   

    你是指在一个Edit编辑框里输入年月日吗?
    我想问你你的安全性检查是指:
    1、年份为4位有效数字吗?
    2、月份为2位有效数字吗?并且月份都小于等于12,大于0吗?
    3、你判断了哪些天为31天,哪些天为30天(润年除外)。
    如果真是这样我想请教你你是怎么做的?