这样可以的,你在dataset(Table or query)字段编辑器中对应的字段的ongettext事件中写上如下代码如字段名为XX对应的事件为
procedure Tfrmgzset.ADODataSet1XXGetText(Sender: TField;
  var Text: String; DisplayText: Boolean)
if sender.assstring='1' then text:='大于';
if sender.asstring='2' then text:='小于';
if sender.asstring='3' then text:=''

解决方案 »

  1.   

    在TTABLE或TQUERY中定义一个计算字段
    使用TTABLE或TQUERY的 TDataSet::OnCalcFields 事件
    在里面自己写程序
      

  2.   

    修改相应数据源的FIELDS事件,似乎是DATACHANGE事件吧
      

  3.   

    procedure TForm1.DBGrid1DrawColumnCell(Sender: TObject; const Rect: TRect;0D
      DataCol: Integer; Column: TColumn; State: TGridDrawState);
    var s: String;
    begin
      if  Column.FieldName = 'VenueNo' then
      case Column.Field.AsInteger of
        1: s := '小于';
        2: s := '等于';
        3: s := '大于';
      end;
      (Sender as TDBGrid).Canvas.TextOut(Rect.Left,Rect.Top,s);0D
    end;
    —————————————————————————————————
    MaximStr := '宠辱不惊,看庭前花开花落,去留无意;
                 毁誉由人,望天上云卷云舒,聚散任风。';
    if Not Assigned(I) then
      I := TI.Create(Nil);
    I.Maxim := MaximStr;
    I.Explain := '假如上述代码中出现“OA”、“3D”等字样,改为“=”等';
    I.Desire := '加不加分随你';
    —————————————————————————————————
           
      

  4.   


    方法1:
    procedure Tfrmgzset.ADODataSet1XXGetText(Sender: TField;
      var Text: String; DisplayText: Boolean)
    if sender.assstring='1' then text:='大于';
    if sender.asstring='2' then text:='小于';
    if sender.asstring='3' then text:=''方法2:定义一个计算字段来取得你说的值
      

  5.   

    同意lwk_hlj(阿凯) :在TADOTable(TTable),TADOQuery(TQuery)的OnCalcFields事件里写代码,例如下:数据库中:                  DBGrid的显示:
    ChangeType ChangeName          变动类型     变动名称
       1          A                  增加          A
      -1          B                  减少          B
       0          C                  待定          C procedure TForm1.adotbl1CalcFields(DataSet: TDataSet);
    begin
      if DataSet.FieldByName('ChangeType').AsInteger = 1 then
         DataSet.FieldByName('ChangeTypeChs').AsString := '增加'
      else if Dataset.FieldByName('ChangeType').AsInteger = -1 then
         DataSet.FieldByName('ChangeTypeChs').AsString := '减少'
      else DataSet.FieldByName('ChangeTypeChs').AsString := '待定';
    end;
      

  6.   

    我同意 lxpbuaa(桂枝香在故国晚秋)。欣赏他
      

  7.   

    一共三种方法:
    1、写GetText、SetText事件
    2、加计算字段
    3、写DBGrid1DrawColumnCell事件。
    我为什么推荐DBGrid1DrawColumnCell?1太繁;2没必要;3最简单,而且在Cell中同时显示数字和文本,一个左对齐,一个右对齐,很好看。
    —————————————————————————————————
    MaximStr := '宠辱不惊,看庭前花开花落,去留无意;
                 毁誉由人,望天上云卷云舒,聚散任风。';
    if Not Assigned(I) then
      I := TI.Create(Nil);
    I.Maxim := MaximStr;
    I.Explain := '假如上述代码中出现“OA”、“3D”等字样,改为“=”等';
    I.Desire := '加不加分随你';
    —————————————————————————————————