如何设置DBGrid控件的各列的显示格式?
如将第一列的数据格式显示为长日期格式'yyyy-mm-dd',第二列的数据格为'1,000.00'的数字格式。

解决方案 »

  1.   

    No.1 通过类型强制转换
      TFloatField(DBGrid1.DataSource.DataSet.FieldByName('数值字段')).DisplayFormat := '0.00';
      TDateField(DBGrid1.DataSource.DataSet.FieldByName('日期字段')).DisplayFormat := 'YYYY-MM-DD';
      

  2.   

    No.1  通过类型强制转换 
        TFloatField(DBGrid1.DataSource.DataSet.FieldByName('数值字段')).DisplayFormat  :=  '0.00'; 
        TDateField(DBGrid1.DataSource.DataSet.FieldByName('日期字段')).DisplayFormat  :=  'YYYY-MM-DD'; 很好
      

  3.   

    下面的可以处理第二列的数据格为'1,000.00'的数字格式。
    你按下面的语句看一下帮助即可找到你需要的,我不多说了。CurrencyString:='';
    CurrencyDecimals:=2;
    TFloatField( FieldList.Fields[1]).currency:=true;
    TFloatField( FieldList.Fields[1]).SetFieldType(ftCurrency ); 
      

  4.   

    我在打开一个ADOQuery后用
    TDateField(ADOQueryExam.DataSource.DataSet.FieldByName('worktime')).DisplayFormat:='yyyy-mm-dd';后报错,为什么?
      

  5.   

    TDateField(ADOQueryExam.FieldByName('worktime')).DisplayFormat:='yyyy-mm-dd';后报错,为什么?