我有一字段中只有'T'或'F'我想让grid分别表示为T->正确 F->错误
请问谁知道如何解决?

解决方案 »

  1.   

    if fieldbyname('').asstring='T' then
         fieldbyname('').asstring:='正确';
    if fieldbyname('').asstring='T' then
         fieldbyname('').asstring:='错误';
      

  2.   

    if fieldbyname('').asstring='T' then
         DBGRID1.COMMS[0].ASSTRING:='正确'
    else
    if fieldbyname('').asstring='F' then
         fieldbyname('').asstring:='错误';
      

  3.   

    试一下EhLib中的DBGridEh组件,好像它的Tcolumn的属性中有应设置,可以建一个数值列表和一个数值影射列表
      

  4.   

    如果不行可以在OnDrawDataCell事件中编码控制程序,
    即,如果条件正确就在画布中输出文字
      

  5.   

    最好的办法是在DBGrid关联的DataSet中增加一个计算字段,然后再计算事件内写下类似楼上各位的代码。
      

  6.   

    用个DBLookupComboBox就完全搞定了。
      

  7.   

    在DateSet组件的OnCalcfields事件中写代码
      

  8.   

    方法:双击table(其它控件差不多),在字段编辑器中点右键选择所有字段:
    add all fields,然后在选中要操作的字段,比如temp,在其gettext事件中加
    上如下代码:
    procedure TForm1.Table1tempGetText(Sender: TField; var Text: String;
      DisplayText: Boolean);
    begin
       if table1.FieldByName('temp').asboolean then
         text:='正确'
       else
         text:='错误';
      

  9.   

    你也可以写成这个样子:
    procedure TForm1.Table1tempGetText(Sender: TField; var Text: String;
      DisplayText: Boolean);
    begin
       if table1.FieldByName('temp').asstring='T' then
         text:='正确';
       if table1.FieldByName('temp').asstring='F' then
         text:='错误';
    end;