procedure   hid_dj(DBG:TDbgrid;n:integer);
begin
with main do
 begin
  if  main.ls_cx_dj=true
  then   dbg.Columns[n].Visible:=true
  else   dbg.Columns[n].Visible:=false;
 end;
end;

解决方案 »

  1.   

    很简单,你可以直接对dataset的字段进行隐藏,我现在就是这样做的,没问题
    table1.fieldbyname('xx').visible:=false;
    而且每次字段的位置不会变掉,不过,infopower的这个wwdbgrid好像有个怪事,好像必须有一个计算字段才可以,我也不知道怎么回事,你可以试试看阿
      

  2.   

    to: dana(dana) 你说的是DELPHI中的DBGRID控件吧,INFORPOWER中的WWDBGRID控件没有CLOUMNS.VISIBLE这个属性