用stringgrid作表格,在一些格子里输入数字,数字的格式如下:10.55或者是9.65 就是小数点前面是1位或者是2位,小数点后面是2位。如何才能规范的显示格子里的数值。
我现在用的是如下的方法:
if ACol=2 then value:= '99.99;1;';
但是小数点前2位的时候还好了,如果是1位的时候,会有一个空位,很烦人。好像9 .65.怎么才能完美的显示出9.65呢。
有遇见过这个问题的帮帮忙,谢谢。
我现在用的是如下的方法:
if ACol=2 then value:= '99.99;1;';
但是小数点前2位的时候还好了,如果是1位的时候,会有一个空位,很烦人。好像9 .65.怎么才能完美的显示出9.65呢。
有遇见过这个问题的帮帮忙,谢谢。
procedure TForm1.StringGrid1DrawCell(Sender: TObject; ACol,ARow: Integer; Rect: TRect; State: TGridDrawState);
var
CellStr: string;
Mode: integer;
begin
if Arow= 0 then Mode:=DT_CENTER //第一行标题栏,居中;其它行居右
else Mode:=DT_RIGHT;
CellStr:=StringGrid1.Cells[ACol,ARow];
StringGrid1.Canvas.FillRect(Rect);
DrawText(StringGrid1.Canvas.Handle, PChar(CellStr), Length(CellStr), Rect, Mode);
end;
value := YourFunction(9.65, fmtString);