先把整数对应的字符串存在一个变量中,然后付给dbgrid1.fields[n]

解决方案 »

  1.   

    procedure Tfrm_supplier.dbgrid1DrawColumnCell(Sender: TObject;
      const Rect: TRect; DataCol: Integer; Column: TColumn;
      State: TGridDrawState);
    begin
      if (Column.FieldName='flag') then
        if not column.Field.IsNull then
          if column.Field.AsInteger=1 then
            dbgrid1.canvas.TextRect(Rect,Rect.Left+2,Rect.Top+2,'')
          else
            dbgrid1.Canvas.TextRect(Rect,Rect.Left+2,Rect.Top+2,'已作废');
    end;
    着方法不是很漂亮,但可用。