Fórum colorindo errado #544138
30/01/2016
0
begin
with TDBGrid(Sender) do
begin
if DataSource.DataSet.FieldByName('margem').AsString <= EDtnivel.text then
begin
if (gdSelected in State) then
Canvas.Brush.Color := clhighlight
else
begin
Canvas.Font.Style := [fsBold];
Canvas.Font.Color := clhighlight;
end
end;
Canvas.FillRect(Rect);
DefaultDrawColumnCell(Rect,DataCol,Column,State);
begin
if DataSource.DataSet.FieldByName('margem').AsString > EDtnivel.text then
begin
if (gdSelected in State) then
Canvas.Brush.Color := clteal
else
begin
Canvas.Font.Style := [fsBold];
Canvas.Font.Color := clteal;
end;
Canvas.FillRect(Rect);
DefaultDrawColumnCell(Rect,DataCol,Column,State);
end
end;
end;
o resultado é esse
[IMG]http://i64.tinypic.com/w7oms2.jpg[/IMG]
Valmir Inacio
Curtir tópico
+ 0Posts
01/02/2016
Natanael Ferreira
Altere seu código para que compare Float.
Troque isto:
if DataSource.DataSet.FieldByName('margem').AsString <= EDtnivel.text thenPor isto:
if DataSource.DataSet.FieldByName('margem').AsFloat <= StrToFloat(EDtnivel.text) thenGostei + 0
01/02/2016
Valmir Inacio
---------------------------
Project1
---------------------------
'' is not a valid floating point value.
---------------------------
OK
---------------------------
Gostei + 0
01/02/2016
Raimundo Pereira
Gostei + 0
01/02/2016
Valmir Inacio
Gostei + 0
01/02/2016
Raimundo Pereira
if (EDtnivel.text='') then
begin
ShowMessage('Acesso negado, informar a margem');
EDtnivel.SetFocus;
exit;
end;
if ( StrToFloat(EDtnivel.text)<=0)then
begin
ShowMessage('Acesso negado, informar a margem maior que 0,00');
EDtnivel.SetFocus;
exit;
end;
ShowMessage('Prossegue com a rotina');
end;
Gostei + 0
01/02/2016
Natanael Ferreira
A diferença entre eles é que o StrToFloatDef atribui um valor padrão quando a conversão não é feita com sucesso.
Troque:
if DataSource.DataSet.FieldByName('margem').AsFloat <= StrToFloat(EDtnivel.text) thenPor:
if DataSource.DataSet.FieldByName('margem').AsFloat <= StrToFloatDef(EDtnivel.text, 0) thenNeste caso, será atribuído zero se o edit estiver vazio e o erro não ocorrerá.
Gostei + 0
01/02/2016
Valmir Inacio
Gostei + 0
13/02/2016
Firstzillan
Gostei + 0
13/02/2016
Asadsdggfhfh
Gostei + 0
13/02/2016
Asadsdggfhfh
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)