Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Varios (https://www.clubdelphi.com/foros/forumdisplay.php?f=11)
-   -   Saber cual Edit es mayor (https://www.clubdelphi.com/foros/showthread.php?t=37836)

Caral 23-11-2006 20:57:23

Saber cual Edit es mayor
 
Hola a todos
Saludos y gracias de antemano
Pregunta:
Tengo varios Edit: Ejemplo:
Código Delphi [-]
Edit1.Text = 2
Edit2.Text = 5
Edit3.Text = 7
Edit4.Text = 3
Edit5.Text = 4
Como hago para tomar todos los edit y definir cual tiene el numero mayor.
En este caso me tendria que decir que el Edit3 tiene el 7 y darme ese numero (7).
Gracias y Saludos

roman 23-11-2006 21:09:50

Mira la función MaxIntValue de la unidad Math. Esa te servirá.

// Saludos

xander 23-11-2006 21:12:06

Esta función que hice de primera y pata igual y te sirva:

Código Delphi [-]
procedure TForm3.Button1Click(Sender: TObject);

  function ElEditMasGrande(Edits: array of TEdit): TEdit;
  var
    M: TEdit;
    I: Integer;
  begin
    if Length(Edits) > 0 then
    begin
      M := Edits[Low(Edits)];
      for I := Low(Edits) to High(Edits) do
      begin
        if StrtoIntDef(Edits[i].Text, 0) > StrtoIntDef(M.Text, 0) then
          M := Edits[i];
      end;
      Result := M;
    end
    else
      Result := nil;
  end;

begin
  with ElEditMasGrande([Edit1, Edit2, Edit3, Edit4]) do
  begin
    SetFocus;
  end;
end;

Este ejemplo pone el foco en el edit con el número mas grande.

Caral 23-11-2006 21:20:45

Muchas gracias a ambos
Lo voy a probar
Saludos

JULIOCTORRESG 23-11-2006 21:33:54

A ver si te puedo ayudar.....
 
la idea seria recorrer los controles aprovechando que son del mismo tipo
preguntando por el valor mayor y almacenandolo en una variable....

algo asi //perdon si algun error se me escapa

var
mayor,i:integer;
begin
mayor:=0;
for i:=0 to ComponentCount -1 do
if components[i] is tedit then
begin
if tedit(components[i]).text > mayor then mayor:=STRTOINT(tedit(components[i]).text)

end;

end;
end;
// al final la variable Mayor debe contener el Numero mayor de todos
showmessage('El Mayor es : 'inttostr(mayor));


de repente se me escapa un end o algo asi pero la idea general es esa recorrer los componentes de tipo edit y comparar los numero ....espero que te sirva....


La franja horaria es GMT +2. Ahora son las 00:47:58.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi