如何把CheckBox嵌套在dbgrid的某一列中?

解决方案 »

  1.   

    可以在数据集里面设置LOOKUP字段
      

  2.   

    等于是在DBGrid中动态创建了CheckBox, 控制好top,left就可以了.
      

  3.   

    通过DBGrid的事件 OnDrawColumnCell {
     假设当前连接的表结构 
     Name (String)   Checked (bool)
    }
    procedure TForm1.DBGrid1DrawColumnCell(Sender: TObject; const Rect: TRect;
      DataCol: Integer; Column: TColumn; State: TGridDrawState);
    var
      DBGrid:TDBGrid;
    begin
     DBGrid:=Sender as TDBGrid;
     if(DBGrid.DataSource.DataSet.FieldByName('Checked').AsBoolean) then 
     begin
         //Rect 区域内 画Check
         DBGrid.Canvas....
     end 
     else
     begin
         //Rect 区域内 画unCheck
         DBGrid.Canvas....
     end;
     end;
      

  4.   

    还是用DBGridEh组件吧!不是我做广告,确实是好用。
      

  5.   

    用DBGridEh组件吧!这是它的介绍。
    http://www.ccw.com.cn/applic/prog/htm2003/20030805_162JZ.asp