求一函数!!!!!(100分)

  • 主题发起人 主题发起人 快乐的蚂蚁
  • 开始时间 开始时间

快乐的蚂蚁

Unregistered / Unconfirmed
GUEST, unregistred user!
比如我输入0305系统自动变为200305....DELPHI有没有自带这种函数!!<br>
 
这种函数当然没有,自己做一下<br>Edit1.Text := Format('20%s',[Edit1.Text]);
 
没有这种函数,只能自己写了。<br>同意楼上。
 
realLearning, 好聪明了,,,佩服。。。<br>
 
'200305...':='20'+'200305'
 
因为输年份的时候通常会省略了20,一般我们也清楚我录了.0302代表2003年2月,9902就代表99年2月份,如果输入的是200203那就代表2002年3月了.我想打的函数的就是要能自动给日期前面加上19或20,或者是保持不变...<br><br>不知道Delphi有没有自带这种函数.....
 
调用系统函数获得当前日期DateTime--&gt;字符串,再提取字符串中表示年份的前两个字符<br>把它加到你输入的text之前,<br>函数我不知道了,我好久没用delphi了
 
var<br>&nbsp; iYear,iMonth,iDay: word;<br>&nbsp; s: string;<br>begin<br>&nbsp; DecodeDate(now,iyear,imonth,iday);<br>&nbsp; if length(strtoint(iyear))&gt;2 then<br>&nbsp; &nbsp; s := copy(strtoint(iyear),1,length(strtoint(iyear))-12 )<br>&nbsp; Edit1.Text := s + edit1.text<br>end;<br>虽笨点,但能实现功能,想那么多技巧干什么?
 
那你这个需求就带来百年问题了,,,<br>要是 2099年到了喃?<br>你还是理解成 1999年?,,不会撒,,<br>
 
使用时间组件来输入不是更好。
 
&gt;&gt;飘摇客<br>手动输入比时间控件快捷,主要是不用鼠标点!
 
用FORMATDATATIME行了
 
还是输2003吧<br>用日期控件,<br>客户肯定能接受的
 
多人接受答案了。
 
后退
顶部