例如: 我勾选某表的某些字段,怎么使DBGRID只显示我勾选的那些字段?
如:表有字段,field_Id, field_sex,field_age,field_name, field_part,field_amount
然后我勾选field_Id,field_name,field_amount
然后我这DBGRID就只显示这三个字段所对应的信息和加总field_amount的总数呢?

解决方案 »

  1.   

    在设计阶段:先设置好数据库连接,双击DBGRID,然后添加想要添加的字段.
    在运行期间:只好用代码,DBGRID1.Fields.clear; ..... (抱歉,机器中没Delphi,不能给你一段可运行代码)
      

  2.   

    不行,这样不能动态控制.
    我要的是动态的效果.
    即有时我勾选field_Id,field_name,field_amount, 有时又可能勾选field_Id, field_age,field_name,  有时又勾选field_name, field_amount
    等等.
      

  3.   

    用dbgrid.columns[i].showing=true/false来控制某列的显示
      

  4.   

    你可以默认添加这个表所有的字段,然后通过勾选动作执行dbgrid.columns[i].visible这个属性(true/false)来控制,这样就能够实现你要的动态效果了。
      

  5.   

    for i :=0 to DBGrid.Columns.Count -1 do
    begin
      DBGird.Columns[i].Visible := List.Items[i].Checked;
    end;