Calculos em Delphi

Delphi

27/04/2013

tenho uma aplicação de calculos com o seguinte code:

procedure TForm1.Button1Click(Sender: TObject);
var
A : Real;
B : Real;
C : Real;
begin
A := StrToFloat(Edit1.Text);
B := StrToFloat(Edit2.Text);
C := a + b;
edit3.Text:= FloatToStr(c);
end;

end

Porém só o resultado da soma quando eu clico no button.

eu quero uma ajuda para quando eu digitar um numero inteiro ou não dentro de algum edit e der entre, o resultado já vai aparecendo no edit de resultado, por exemplo o (edit3.Text:= FloatToStr(c)) e não quando eu clicar no button.
Paulo

Paulo

Curtidas 0

Respostas

Vanderson Freitas

Vanderson Freitas

27/04/2013

Puts amigão,
Não entendi muito bem,
más acho que o que voce quer, é so digitar o codigo no evento onchange do edit, e no onkeypress digita o codigo para
ele so aceitar numeros, pontos e virgula
GOSTEI 0
Frederico Brigatte***

Frederico Brigatte***

27/04/2013

Voce poderia colocar o código do botão no evento onExit do segundo edit, por exemplo.
GOSTEI 0
Paulo

Paulo

27/04/2013

Voce poderia colocar o código do botão no evento onExit do segundo edit, por exemplo.


eu gostaria que fosse assim:

qdo eu digito um nº dentro de qualquer edit e dou enter ele já vai somando um por um.

ex: digito o 1 no edit1, qdo eu der enter, vai para o edit2 automaticamente e já vai aparecer o nº 1 no edit de resultado. Qdo eu digitar outro nº no edit2, já vai somando um por um e assim sucessivamente.

estou usando o seguinte code:


procedure TForm1.FormKeyPress(Sender: TObject; var Key: Char);
begin
if key=#13 then begin
SelectNext(ActiveControl as TWinControl,True,True);
key:=#0;
end;
end;
procedure TForm1.Edit10Exit(Sender: TObject);
var
A : Real;
B : Real;
C : Real;
D : Real;
E : Real;
F : Real;
G : Real;
H : Real;
I : Real;
J : Real;
L : Real;

begin
A := StrToFloat(Edit1.Text);
B := StrToFloat(Edit2.Text);
C := StrToFloat(Edit3.Text);
D := StrToFloat(Edit4.Text);
E := StrToFloat(Edit5.Text);
F := StrToFloat(Edit6.Text);
G := StrToFloat(Edit7.Text);
H := StrToFloat(Edit8.Text);
I := StrToFloat(Edit9.Text);
J := StrToFloat(Edit10.Text);

L := a + b + c + d + e + f + g + h + I + J;
edit11.Text:= FloatToStr(L);
end;
procedure TForm1.FormCreate(Sender: TObject);
begin
KeyPreview:=true;
end;


end.


do jeito que está este code, só me dá o resultado qdo eu chego no ultimo edit que o edit11.
GOSTEI 0
Douglas

Douglas

27/04/2013

Amigão,
entendi sua necessidade.
No Delphi, crie um formulário com um edit e um button.
No evento onClick do botão você irá implementar o seguinte código abaixo.
procedure TForm1.Button1Click(Sender: TObject);
var
  retorno: Integer;
  valor  : string;
  i      : Integer;
begin
  retorno := 0;
  for I := 0 to 10 do
  begin
    if InputQuery('Funçao Soma', 'Digite...', valor) then
    begin
      retorno := (StrToInt(valor)  + retorno);
    end;
  end;
  Edit1.Text := IntToStr(retorno);
end;

Espero ter ajudado !
Qualquer dúvida poste aí.
GOSTEI 0
Deivison Melo

Deivison Melo

27/04/2013

Se foi resolvido, por favor, sinalizar para finalizarmos o tópico...
GOSTEI 0
Paulo

Paulo

27/04/2013

Amigão,
entendi sua necessidade.
No Delphi, crie um formulário com um edit e um button.
No evento onClick do botão você irá implementar o seguinte código abaixo.
procedure TForm1.Button1Click(Sender: TObject);
var
  retorno: Integer;
  valor  : string;
  i      : Integer;
begin
  retorno := 0;
  for I := 0 to 10 do
  begin
    if InputQuery('Funçao Soma', 'Digite...', valor) then
    begin
      retorno := (StrToInt(valor)  + retorno);
    end;
  end;
  Edit1.Text := IntToStr(retorno);
end;

Espero ter ajudado !
Qualquer dúvida poste aí.



agradeço a ajuda mais não é assim que estou precisando.

O meu projeto não tem button, só edits e são 11 edits como postado lá em cima,

vou explicar melhor.


quando eu vou digitando numeros nos edits, o edit11 que o edt de resultado vai mudando o valor a cada numero que eu digitar nos edits seja soma ou subtração, Entendeu?


OBS: este projeto meu, é de calculos de pontuação de funcionario publico para promoção. Todo final de ano eu faço a contagem dos pontos das fichas dos funcionários e essas fichas são preenchidas por notas especifica de cada area. Tem pontuações negativas e positivas,aí o que tiver a maior nota dentro das positivas e negativas, será promovido. entenderam?


GOSTEI 0
Paulo

Paulo

27/04/2013

Se foi resolvido, por favor, sinalizar para finalizarmos o tópico...



ainda não foi finalizado, estou precisando de ajuda conforme o especificado em baixo.
GOSTEI 0
Paulo

Paulo

27/04/2013

Se foi resolvido, por favor, sinalizar para finalizarmos o tópico...



ainda não foi finalizado, estou precisando de ajuda conforme o especificado em cima.

....
GOSTEI 0
Paulo

Paulo

27/04/2013

Amigão,
entendi sua necessidade.
No Delphi, crie um formulário com um edit e um button.
No evento onClick do botão você irá implementar o seguinte código abaixo.
procedure TForm1.Button1Click(Sender: TObject);
var
  retorno: Integer;
  valor  : string;
  i      : Integer;
begin
  retorno := 0;
  for I := 0 to 10 do
  begin
    if InputQuery('Funçao Soma', 'Digite...', valor) then
    begin
      retorno := (StrToInt(valor)  + retorno);
    end;
  end;
  Edit1.Text := IntToStr(retorno);
end;

Espero ter ajudado !
Qualquer dúvida poste aí.




agradeço a ajuda mais não é assim que estou precisando.

O meu projeto não tem button, só edits e são 11 edits como postado lá em cima,

vou explicar melhor.


quando eu vou digitando numeros nos edits, o edit11 que o edt de resultado vai mudando o valor a cada numero que eu digitar nos edits seja soma ou subtração, Entendeu?


OBS: este projeto meu, é de calculos de pontuação de funcionario publico para promoção. Todo final de ano eu faço a contagem dos pontos das fichas dos funcionários e essas fichas são preenchidas por notas especifica de cada area. Tem pontuações negativas e positivas,aí o que tiver a maior nota dentro das positivas e negativas, será promovido. entendeu?
GOSTEI 0
Paulo

Paulo

27/04/2013

Amigão,
entendi sua necessidade.
No Delphi, crie um formulário com um edit e um button.
No evento onClick do botão você irá implementar o seguinte código abaixo.
procedure TForm1.Button1Click(Sender: TObject);
var
  retorno: Integer;
  valor  : string;
  i      : Integer;
begin
  retorno := 0;
  for I := 0 to 10 do
  begin
    if InputQuery('Funçao Soma', 'Digite...', valor) then
    begin
      retorno := (StrToInt(valor)  + retorno);
    end;
  end;
  Edit1.Text := IntToStr(retorno);
end;

Espero ter ajudado !
Qualquer dúvida poste aí.




agradeço a ajuda mais não é assim que estou precisando.

O meu projeto não tem button, só edits e são 11 edits como postado lá em cima,

vou explicar melhor.


quando eu vou digitando numeros nos edits, o edit11 que o edt de resultado vai mudando o valor a cada numero que eu digitar nos edits seja soma ou subtração, Entendeu?


OBS: este projeto meu, é de calculos de pontuação de funcionario publico para promoção. Todo final de ano eu faço a contagem dos pontos das fichas dos funcionários e essas fichas são preenchidas por notas especifica de cada area. Tem pontuações negativas e positivas,aí o que tiver a maior nota dentro das positivas e negativas, será promovido. entendeu?
GOSTEI 0
Paulo

Paulo

27/04/2013

Amigão,
entendi sua necessidade.
No Delphi, crie um formulário com um edit e um button.
No evento onClick do botão você irá implementar o seguinte código abaixo.
procedure TForm1.Button1Click(Sender: TObject);
var
  retorno: Integer;
  valor  : string;
  i      : Integer;
begin
  retorno := 0;
  for I := 0 to 10 do
  begin
    if InputQuery('Funçao Soma', 'Digite...', valor) then
    begin
      retorno := (StrToInt(valor)  + retorno);
    end;
  end;
  Edit1.Text := IntToStr(retorno);
end;

Espero ter ajudado !
Qualquer dúvida poste aí.




agradeço a ajuda mais não é assim que estou precisando.

O meu projeto não tem button, só edits e são 11 edits como postado lá em cima,

vou explicar melhor.


quando eu vou digitando numeros nos edits, o edit11 que o edt de resultado vai mudando o valor a cada numero que eu digitar nos edits seja soma ou subtração, Entendeu?


OBS: este projeto meu, é de calculos de pontuação de funcionario publico para promoção. Todo final de ano eu faço a contagem dos pontos das fichas dos funcionários e essas fichas são preenchidas por notas especifica de cada area. Tem pontuações negativas e positivas,aí o que tiver a maior nota dentro das positivas e negativas, será promovido. entendeu?
GOSTEI 0
Paulo Castanha

Paulo Castanha

27/04/2013

Use o seu código no evento onchange do seu Edit1.text, assim quando voce digitar o resultado vai saindo automaticamente.


Abraço
GOSTEI 0
Thiago Santana

Thiago Santana

27/04/2013

O problema chegou a ser resolvido?
GOSTEI 0
Paulo

Paulo

27/04/2013

Problema resolvido
GOSTEI 0
POSTAR