Utilizando Calculo com 5 edits

25/03/2013

1

Eu vi uma situação interessante, eu gostaria de ler 05 valores utilizando 05 edits e dai me apresentar o número maior.
Isso seria possível de uma maneira se ficar utilizado o If várias vezes?
Utilizei o inputquery e deu certo, mas gostaria de utilizar os edits.

Será que alguém poderia me ajudar nessa?
Responder

Posts

Eu vi uma situação interessante, eu gostaria de ler 05 valores utilizando 05 edits e dai me apresentar o número maior.
Isso seria possível de uma maneira se ficar utilizado o If várias vezes?
Utilizei o inputquery e deu certo, mas gostaria de utilizar os edits.

Será que alguém poderia me ajudar nessa?


Boa noite David, tudo bem?

Acho que uma alternativa é utilizar uma rotina que percorra os componentes do formulário procurando os edits.

Sugestão:

procedure TForm1.Button1Click(Sender: TObject);
var
  intContador: Integer;
  intNumeroedit: Integer;
  intMaior: Integer;
begin
  // Variável que vai armazenar o maior número
  intMaior := 0;

  // Percorre os componentes do formulário "Self" procurando os edits
  for intContador := 0 to Self.ComponentCount - 1 do
    if Components[intContador] is TEdit then
      with (Components[intContador] as TEdit) do
      begin
        // Converte o conteúdo do texto em inteiro
        // Try..except caso seja diferente de 0..9
        try
          intNumeroedit := StrToInt(Text);
        except
          begin
            ShowMessage('Erro.');
            Exit;
          end;
        end;

        // Verifica se o valor encontrado no edit é maior que o número já encontrado
        // Caso seja, atribui o valor para variável do maior número
        if intNumeroedit > intMaior then
          intMaior := intNumeroedit;
      end;
  // Exibe o maior número
  ShowMessage('O número maior: ' + IntToStr(intMaior));
end;


Qualquer dúvida estou à disposição,
Atenciosamente,
Responder

26/03/2013

David Sobral

Danilo no Delphi XE3 o código que você me passou deu certo perfeitamente, porém no Delphi XE2 aparece:
project project1.exe raised exception class econverterror with message '''' is not a valid integer value
O que pode estar acontecendo?
Responder

02/04/2013

David Sobral

Danilo no Delphi XE3 o código que você me passou deu certo perfeitamente, porém no Delphi XE2 aparece:
project project1.exe raised exception class econverterror with message '''' is not a valid integer value
O que pode estar acontecendo?
Responder

02/04/2013

William

Colega debug aplicação e observe em qual linha é disparado esse erro!

Assim fica mais fácil de entender, mas acho estranho esse tipo anomalia entre as versões, até porque o código é bem simples.
Responder
Danilo no Delphi XE3 o código que você me passou deu certo perfeitamente, porém no Delphi XE2 aparece:
project project1.exe raised exception class econverterror with message '''' is not a valid integer value
O que pode estar acontecendo?


Bom dia David. Tudo bem?

Desculpa a demora,
Siga as instruções do amigo wllfl. Também achei estranho essa anomalia pois utilizo a versão XE2.

Qualquer dúvida estou à disposição,
Um abraço,
Atenciosamente,
Responder
×
+1 DevUP
Acesso diário, +1 DevUP
Parabéns, você está investindo na sua carreira