Delphi Format 格式指定寬度會在後面補零,沒指定寬度尾零就會去除但整排資料的小數點位置就不同,需要對齊小數點就要將尾零用空白替換掉。


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
procedure TF2005J.qyWeightGetText(Sender: TField; var Text: String; DisplayText: Boolean);
var
  s: string;
  i: Integer;
begin
  if Sender.DataSet.IsEmpty then Exit;

  s := Format('%.*f', [4, Sender.AsFloat]);
  for i := Length(s) downto 0 do
  begin
    case s[i] of
      '0': s[i] := ' ';
      '.': begin
         s[i] := ' ';
         Break;
      end;
    else
      Break;
    end;
  end;
  Text := s;
end;