Se vc consultar atentamente o help do Delphi, vai constatar que tanto TTime 
como TDate são, em essência, do tipo TDateTime. No seu caso, companheiro, um 
pouco de conhecimento a mais sobre esses tipos de dados se faria necessário.

Para que essa sua verificação funcione, sabendo que um TTime é na verdade um 
TDateTime, vc deve 'zerar' a parte de data do valor para que a comparação (que 
não deixa de ser um cálculo) funcione. Veja a aplicação do tipo console abaixo 
que exemplifica este esclarecimento:

program TesteDataHora;

{$APPTYPE CONSOLE}

uses
  Windows, SysUtils;

var
  TotalEntrada, TotalSaida: TDateTime;

function StringToOem(const s: string): string;
begin
  SetLength(Result, Length(s));
  AnsiToOem(PChar(s), PChar(Result));
end;

begin
  TotalEntrada := Now();
  Sleep(1000);  // atraso intencional!
  TotalSaida := Now();

  //  'Zera' a parte de data dos valores
  ReplaceDate(TotalEntrada, 0);
  ReplaceDate(TotalSaida, 0);

  if TotalEntrada < TotalSaida then
    WriteLn(StringToOem('O menor horário é TotalEntrada.'))
  else if TotalEntrada> TotalSaida then
    WriteLn(StringToOem('O menor horário é TotalSaida.'))
  else
    WriteLn(StringToOem('Os horários são iguais.'));

  Write('Tecle ENTER ...');
  WriteLn(Eoln);
end.

Sds.






________________________________

To: delphi-br@yahoogrupos.com.br
From: [EMAIL PROTECTED]
Date: Tue, 11 Mar 2008 10:14:02 -0700
Subject: [delphi-br] bug ao traballhar com horas, ou falta de conhecimento?







Olá a todos.
Estou tentando fazer um simples calculo com horas, porem quando eu uso 
variáveis do tipo TTime, o calculo não funciona corretamente, mas se eu fizer a 
POG abaixo, a coisa passa a funcionar perfeitamente. Pergunto: tem alguma coisa 
que eu não esteja fazendo corretamente ou um detalhe que ficou para trás ou o 
Delphi 7 tem mesmo um bug?

Obs:Todas as variáveis são do tipo TTime;

Código que não funciona:
if (TotalEntrada <= TotalSaida )then
MenorHorario := TotalEntrada

Código POG que funciona:

if StrToTime( TimeToStr( TotalEntrada)) <= StrToTime( TimeToStr( TotalSaida 
))then
MenorHorario := TotalEntrada

--
Atenciosamente:
Evaldo Avelar Marques
Programador Junior: Delphi, firebird/interbase, C# Dot Net, C++
Debian GNU/Linux.
[EMAIL PROTECTED] Belo Horizonte/MG Brazil

Abra sua conta no Yahoo! Mail, o único sem limite de espaço para armazenamento!
http://br.mail.yahoo.com/

[As partes desta mensagem que não continham texto foram removidas]









_________________________________________________________________
Veja mapas e encontre as melhores rotas para fugir do trânsito com o Live 
Search Maps!
http://www.livemaps.com.br/index.aspx?tr=true

Responder a