按钮事件:
var
a:double;
begin
  a:=StrToFloat(Edit1.text);
  Edit2.text:=FloatToStr(a);
end;
上述代码中,如果输入7.001,按钮执行后显示也是7.001,但输入为7.00后,显示就为7,
如果要求定义的类型不变,(数据要做运算操作),请问用format怎么写才能使输入与输出吻合?
请给出源码,谢谢

解决方案 »

  1.   

    Edit2.text := format('.2f', [a]);
      

  2.   

    Edit1.Text := formatfloat('0.00',a);保留两位小数
      

  3.   

    DataModule2.Plan_ADODataSet.FieldByName('COIL_THICK').AsFloat:=StrToFloatDef(EditCOIL_THICK.Text,0);//厚度
    这句话,是把EditCOIL_THICK.Text写到数据库中,要考虑如果没有做输入情况下默认为0,如果输入7.00,写到数据库后,在表中查询此记录的字段也为7.00,而不是7,应该怎么改这句话?
      

  4.   

    我告诉你,即使是浮点数也可以用asstring的
    a:double;
      a := StrToFloatdef(EditCOIL_THICK.Text,0);
    DataModule2.Plan_ADODataSet.FieldByName('COIL_THICK').Asstring :=  formatfloat('0.00',a);
      

  5.   

    是不是显示出来的?TNumericField(DataModule2.Plan_ADODataSet.FieldByName('COIL_THICK')).DisplayFormat := '#.00';试一下有没有用
      

  6.   

    a:double;
      a := StrToFloatdef(EditCOIL_THICK.Text,0);
    DataModule2.Plan_ADODataSet.FieldByName('COIL_THICK').Asstring :=  formatfloat('0.00',a);
      

  7.   

    但是我的字段类型是Float,不能改为string,应该怎么做啊?
      

  8.   

    var
    a:double;
    begin
      a:=StrToFloat(Edit1.text);
      Edit2.text:=formatfloat('0.00',a);
    end;