Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

... PV ...

Condição IF no delphi

Recommended Posts

Bom dia galera estou fazendo um programinha aqui mais estou com uma duvida num código aqui e coisa boba mesmo, tipo assim:

Tem um DbEdit ligado a um campo da minha tabela. Eu quero colocar um teste sobre ele. Sendo um outro DBEdit recebendo o resultado deste teste.

No caso eu só quero escrever uma condição if.

 

ex:

se DBEdit1 for < ou igual a 30 então

DBEdit2 := ('Grau 1') senão

se DBEdit1 for > 30 e DBEdit1 for < = 50 então

DBEdit2 := ('Grau 2') senão

DBEdit2 := ('Grau 3');

 

tipo assim se alguem puder me ajudar ai galera

vlw

Compartilhar este post


Link para o post
Compartilhar em outros sites

você pode fazer de 2 formas

pode utilizar uma variavel ou o proprio edit

 

seria assim:

if dbedit.text < 30 then

begin

acontece x;

end

else

acontece y;

 

=============

 

utilizando variavel

intVariavel:= strToint(dbedit.text)

 

if variavel< 30 then

begin

acontece x;

end

else

acontece y;

obs.: a conversão é feita somente se trabalhar com inteiros

t +

Ricardo

Compartilhar este post


Link para o post
Compartilhar em outros sites

Boa noite a todos.

 

Existem alguns pontos a serem considerados quando voce utiliza DBEdits que são ligados aos campos de dados.

 

1º) Os DBEdits foram programados para visualizar, bem como alterar um dado de um campo no banco de dados. Qualquer alteração feita dentro de sua caixa de texto, se esse campo estiver com a propriedade ReadOnly = false, e o componente que lê a tabela estiver configurado para atualizar a tabela, um abraço, o que voce digitar ali, será gravado quando houver movimentação de registros. Acho melhor voce evitar gravações indesejadas.

 

2º) Ora se os DBEdits estão ligados a um campo no banco de dados, então porque não fazer a verificação com a condição IF diretamente com o campo, e atribuir um valor ao outro campo ? Assim:

 

if Query1.FieldByName('Campo1').AsInteger < 30 then
	  Query1.FieldByName('Campo2').AsString := 'Grau 1'
   else if Query1.FieldByName('Campo1').AsInteger in [30..50] then
	  Query1.FieldByName('Campo2').AsString := 'Grau 2'
   else
	  Query1.FieldByName('Campo2').AsString := 'Grau 3'

Isto é, o código acima só lhe servirá se voce prentender gravar esse dado no banco, onde voce ainda terá a opção de escrever o código em uma Trigger, e isto também dependerá do banco de dados que voce está usando.

 

Agora se voce pretende fazer a verificação no momento da digitação, também pode, só que é como eu disse antes, os dados podem ser gravados em caso de movimentação dos registros, ou quando se aciona um Post.

 

if StrToInt(DBEdit1.Text) < 30 then
	  DBEdit2.Text := 'Grau 1'
   else if StrToInt(DBEdit1.Text) in [30..50] then
	  DBEdit2 := 'Grau 2'
   else
	  DBEdit2').AsString := 'Grau 3'

Um Abraço

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.