Ver Mensaje Individual
  #16  
Antiguo 06-05-2011
Avatar de Caral
[Caral] Caral is offline
Miembro Premium
 
Registrado: ago 2006
Posts: 7.659
Reputación: 25
Caral Va por buen camino
Hola
INT = Integer.
REAL = Float.
Es simple, la funcion debe devolver un valor REAL (float), sin envargo contiene o trasforma los edits en INTEGER.
Analiza esto:
Código Delphi [-]

Function TForm1.TransformaTiempo:Real;
var h,m,s : Real;
Begin
  h:= StrToint(EdHora.Text);
  m:= StrToint(EdMin.Text);
  s:= StrToint(EdSeg.Text);
  TransformaTiempo:= h*3600 + m*60 + s;
End;

procedure TForm1.Button1Click(Sender: TObject);
begin
 MemoBat.lines.add('shutdown /s /t '+FloatToStr(TransformaTiempo));
 MemoBat.lines.SaveToFile(ExtractFilePath(Application.ExeName)+'apagar.bat');
 WinExec(PChar(ExtractFilePath(Application.ExeName)+'apagar.bat'),SW_SHOWNORMAL);
 MemoBat.lines.clear;
end;
Se generan tres variable REAL y se les pasa el valor de los edit, a la hora de hacer el calculo es mucho mas sencillo hacerlo ya que no se tiene que hacer ninguna transformacion.
Espero que lo asimiles, si no pregunta.
Saludos
__________________
Siempre Novato
Responder Con Cita