rt
不能用sql语句实现,也就是说当用户输入两时间到文本框后,利用鼠标离开事件,就能求出两时间的小时数。(因为此条记录尚未存到数据库中,所以应该不能用sql语句实现的,数据库是oracle)两时间格式:2008-9-18 20:30:00
          2008-9-29 21:30:00相差的时间数应该为:11天*24小时+1小时=264小时

解决方案 »

  1.   


    var
      nh,oh: Tdatetime;
    begin  oh:=strtodatetime('2008-7-8 05:30:00');
      nh:=strtodatetime('2008-7-8 07:30:00');
      showmessage(floattostr(hourspan(nh,oh)));end;
      

  2.   

    你是想算两个时间之间的间隔吧 那么delphi自带有函数的
    调用 DateUtils 单元下的
    YearSpan(DateTime1, DateTime2) //返回DateTime1, DateTime2的年间隔
    MonthSpan(DateTime1, DateTime2) //返回DateTime1, DateTime2的月间隔
    WeekSpan(DateTime1, DateTime2) //返回DateTime1, DateTime2的星期间隔
    DaySpan(DateTime1, DateTime2) //返回DateTime1, DateTime2的天间隔
    HourSpan(DateTime1, DateTime2) //返回DateTime1, DateTime2的小时间隔
    MinuteSpan(DateTime1, DateTime2) //返回DateTime1, DateTime2的分钟间隔
    SecondSpan(DateTime1, DateTime2) //返回DateTime1, DateTime2的秒间隔
    所有的返回值都是 Double类型的 如果需要把他转化为整型的 可调用Math单元下的Ceil函数看你要算什么间隔了 通过这些函数的运用都可以取出 
      

  3.   

    var
      nh,oh: Tdatetime;
      h,m,s:Integer;
    begin  oh:=strtodatetime('2008-7-8 05:30:00');
      nh:=strtodatetime('2008-7-8 07:30:00');
      h := Round(abs(nh - oh) * 24);           //多少小时
      m := Round(abs(nh - oh) * 24 * 60);      //多少分钟
      s := Round(abs(nh - oh) * 24 * 60 * 60); //多少秒
    end;
      

  4.   

    the promble has been solved
      

  5.   

    这个问题分超高啊.中农就是不一样.
    DateUtils单元里很多处理时间的函数.
      

  6.   

    var
      StartTime,EndTime: TDateTime;
      Hours: Integer;
    begin
      StartTime := Now;
      ...
      //数小时后
      EndTime := Now;  Hours := Trunc( (EndTime - StartTime)(*天数*) * 24 (*小时数*) );
      ShowMessage('共经历了:'+ IntToStr(Hours) + '个小时.');
    end;
      

  7.   

    YearSpan(DateTime1, DateTime2) //返回DateTime1, DateTime2的年间隔 
    MonthSpan(DateTime1, DateTime2) //返回DateTime1, DateTime2的月间隔 
    WeekSpan(DateTime1, DateTime2) //返回DateTime1, DateTime2的星期间隔 
    DaySpan(DateTime1, DateTime2) //返回DateTime1, DateTime2的天间隔 
    HourSpan(DateTime1, DateTime2) //返回DateTime1, DateTime2的小时间隔 
    MinuteSpan(DateTime1, DateTime2) //返回DateTime1, DateTime2的分钟间隔 
    SecondSpan(DateTime1, DateTime2) //返回DateTime1, DateTime2的秒间隔 
    支持
      

  8.   

    HoursBetween
    僵哥用自己的方法写的。
      

  9.   

    我估计楼主得到的不是datetime类型的数据,是string类型的string--》datetime转换一下应该就可以用到楼上的方法了