Fórum Aparecer sinais + e - em numeros #420359
23/07/2012
0
tenho uns 8 campos numéricos onde preciso colocar uma máscara de forma que se o número for positivo apresente o sinal + e se for negativo o sinal -. Ex: +1,25; +3,75.
Alguem pode me ajudar?
Carlos Magno
Curtir tópico
+ 0Posts
23/07/2012
William
function FormataValor(valor: Double): string;
begin
if valor > 0 then
Result := FormatFloat(+0.00, valor)
else
Result := FormatFloat(0.00, valor);
end;
OBS.: Note que quando for negativo não precisa adicionar o sinal -.
Gostei + 0
24/07/2012
Carlos Magno
Gostei + 0
24/07/2012
William
function FormataValor(valor: Double): string;
begin
if valor > 0 then
Result := FormatFloat(+0.00, valor) //Não vai Ponto e vírgula
else
Result := FormatFloat(0.00, valor);
end;
Gostei + 0
24/07/2012
Carlos Magno
Gostei + 0
24/07/2012
Carlos Magno
procedure Tfrm_servprint.QRDBText36Print(sender: TObject; var Value: String); function FormataValor(valor: Double): string; begin if valor > 0 then Result := FormatFloat(+0.00, valor) else Result := FormatFloat(0.00, valor); end;
Gostei + 0
24/07/2012
William
function Tfrm_servprint.FormataValor(valor: Double): string; begin if valor > 0 then Result := FormatFloat(+0.00, valor) //Não vai Ponto e vírgula else Result := FormatFloat(0.00, valor); end; //Dentro da procedure que for necessária QRBText36.text := FormataValor(<ak vai o valor para ser formatado>);
Nesse caso como os valores são de um dataset precisão ser formatados durante a criação do relatório.
Gostei + 0
24/07/2012
Carlos Magno
qrdbtext36.text := FormataValor(essa parte onde estou errando);
Gostei + 0
24/07/2012
William
qrdbtext36.text := FormataValor(essa parte onde estou errando);
Você vai passar como parâmetro para Function FormataValor(), o valor que vc quer que seja formatado possivelmente deve ser um campo da sua tabela.
Poste qual o código inteiro ou campo que deseja formatar..
OBS.: Pretendo escrever um artigo sobre as principais diferenças como usar procedures e functions no delphi, vou postar ak no portal DevMedia.
Gostei + 0
24/07/2012
Carlos Magno
Gostei + 0
26/07/2012
Joel Rodrigues
qrdbtext36.text := FormataValor(tabela.FieldByName(´LODE´).AsFloat);
Gostei + 0
26/07/2012
Carlos Magno
Gostei + 0
26/07/2012
Carlos Magno
Gostei + 0
26/07/2012
Joel Rodrigues
Gostei + 0
26/07/2012
Carlos Magno
Gostei + 0
26/07/2012
Bruno Leandro
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)