怎么获得这样的一个时间值?(15分)

  • 主题发起人 主题发起人 REbNik
  • 开始时间 开始时间
R

REbNik

Unregistered / Unconfirmed
GUEST, unregistred user!
[blue]用户输入一个时间后(程序保证格式正确的:HH:MM:SS),如何根据当前系统时间
推算出目前时间和用户的定时之间还差多久(如果用户输入的时间比当前时间早,就认为
是第二天的这个时间)?[/blue]
 
时间类型是可以直接加减的(为Double类型)
 
有一个API我忘了,你查一下可以使用。
 
将时间分为年,月,日,小时,分,秒,毫秒,想怎么计算怎么计算!
 
http://www.delphibbs.com/delphibbs/dispq.asp?lid=619799
 
if Frac(now) - Frac(UserTimer) > 0 then
// 比当前时间早
else
// 比当前时间晚
 
把两个时羊取出来比较一下不就行了吗!
 
Returns the number of minutes between two specified TDateTime values.

Unit

DateUtils

Category

date/time routines

function MinutesBetween(const ANow, AThen: TDateTime): Int64;

Description

Call MinutesBetween to obtain the difference, in minutes, between two TDateTime values. MinutesBetween counts only entire minutes that have elapsed. Thus, MinutesBetween reports the difference between 9:00:00 AM and 9:00:59:999 AM as 0 because the difference is one millisecond short of an entire minute.
 
原来这样的函数有一组,很方便!
 
function GetTheTime(const Time:String;const NowTime:TDateTime):TDateTime;
var
temp:TDateTime;

begin
temp:=StrToDateTime(Time);
if Temp<StrToDateTime(FormatDateTime('hh:nn:ss',NowDateTime)) then
begin
Result:=StrToDate(FormatDateTime(,'yyyy/mm/dd',NowTime+1)+' '+Time);
end
else
begin
Result:=StrToDate(FormatDateTime(,'yyyy/mm/dd',NowTime)+' '+Time);
end;
end;
 
加减时间
 
后退
顶部