delphi日期时间比较大小

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了delphi日期时间比较大小相关的知识,希望对你有一定的参考价值。

datestart:=DateTostr(DateTimePicker1.Date)
怎么取得当前选定的值啊
我是在form初始化时给他服了一个now当前时间
var
i:integer;
cost,income:double;
datestart,dateend:string;
yjks,yjjs:TdateTime;
begin
datestart:=DateTostr(DateTimePicker1.Date)+' '+Edit1.Text; //预计开始时间,Edit1.Text取得当前设定的时间
dateend:=DateTostr(DateTimePicker1.Date)+' '+Edit2.Text; //预计结束时间
yjks:=StrToDateTime(datestart); //转换成日期时间
yjjs:=StrToDateTime(dateend);
if yjks <=yjjs then
begin
//执行代码
end;
我怎么取不到用DateTimePicker1取得当前的日期呢

我再补充一下:
我的上面的Edit1.Text能取到时间如:12:30:20
但是日期采用DateTimePicker1.Date来点击选择日期如:2008-10-01
DateTimePicker1在窗口的formshow事件里已经对其初始化为当前日期
然后Edit1.Text在formshow里面初始化为当前时间
代码:
DateTimePicker1.Datetime:=now;
DateTimePicker2.Datetime:=now;
Edit1.Text:=timetostr(time);
Edit2.Text:=timetostr(time);


datestart:=DateTostr(DateTimePicker1.Date)+' '+Edit1.Text; //预计开始时间,Edit1.Text取得当前设定的时间
datestart的值可以得到如右的格式:2008-10-01 12:30:20
但是选择的日期得不到
只能得到初始化时的日期

参考技术A 重新整理一下你的思路吧。

如何用java比较两个时间或日期的大小

参考技术A 首先
按照一定的格式输入两个日期的字符串
然后用simpledateformat类转换成date实例date1,
date2
然后
calendar
cal1
=
calendar.getinstance();
calendar
cal2
=
calendar.getinstance();
cal1.settime(date1);
cal2.settime(date2);
这样你就有了两个表示所输入日期的calendar实例了
calendar可以做很多事
比如用cal1.after(cal2)或者cal1.before(cal2)或者cal1.equals(cal2)或者cal1.compareto(cal2)来比较两个日期时间先后
比如cal.get(calendar.year)可以得到表示该日期年份的整数
同理cal.get(calendar.month)可以得到月份
甚至可以用cal.gettimeinmillis()得到表示该日期的毫秒数
有了这些方法,简单的计算之后就可以得到需要的相差的信息
如果楼主是来求现成的源代码的-
-
我没有

以上是关于delphi日期时间比较大小的主要内容,如果未能解决你的问题,请参考以下文章

如何用JS比较两个日期时间的大小呢?

CDateTimeCtrl类型的日期如何比较大小

delphi中使用sql 语句进行日期比较有问题

JS 如何比较时间大小?

sql日期比较大小

java怎么比较两个日期(年和月)的大小