if vSituacao = 0 then
label1.caption := 'ABERTO'
else
label1.caption := 'FECHADO';
Num caso assim, podemos utilizar a função IIF, que nada mais é do que a fusão dessas linhas, como está mostrado abaixo:
function IIf(Expressao: Variant; ParteTRUE, ParteFALSE: Variant): Variant;
begin
if Expressao then
Result := ParteTRUE
else
Result := ParteFALSE;
end;
A função possue três parâmetros e o retorno do tipo Variant. No primeiro parãmetro você deve fazer um teste lógico, nos demais, serão o que será retornado no caso do teste lógico ser True ou False.
O exemplo citado no início do post, ficaria assim:
label1.caption := iif(vSituacao=0,'ABERTO','FECHADO');
Outro exemplo:
vResultado := iif(vTexto1 <> vTexto2,vTexto1,vTexto2);
Ao meu ver, o código fica mais simples, mais elegante e mais ágil quando se trata de codificação.

0 deram a sua opnião e vc ?:
Postar um comentário