在DBgrid里面可以加入一列checkbox吗?谢谢!

解决方案 »

  1.   

    DBgrid不能加 checkbox,需要自己贴图实现这种功能。
      

  2.   

    TDBgridEh是什么控件啊?在哪儿?我现在想达到的效果是:在一个类似dbgrid的显示区域里面显示n行n列,每一行的前面有一个checkbox,通过点击checkbox标识该行被选择,画面上还有一个button,点击后对选中的记录进行操作。
    该怎么做?
      

  3.   

    可以加 private
        { Private declarations }
      public
      originaloptions:TDBGridOptions;  //这个要写
      end;var
      Form1: TForm1;implementation{$R *.dfm}procedure TForm1.DBGrid1DrawColumnCell(Sender: TObject; const Rect: TRect;
      DataCol: Integer; Column: TColumn; State: TGridDrawState);
    const
      ctrlstate:array[boolean] of integer=(dfcs_buttoncheck,dfcs_buttoncheck or dfcs_checked);
    begin
      if column.Field.DataType=ftboolean then
      begin
        form1.DBGrid1.Canvas.FillRect(rect);
        drawframecontrol(form1.DBGrid1.Canvas.Handle,rect,dfc_button,ctrlstate[column.Field.asboolean]);
      end;
    end;procedure TForm1.DBGrid1ColEnter(Sender: TObject);
    begin
      if form1.DBGrid1.SelectedField.DataType=ftboolean then
      begin
        originaloptions:=form1.DBGrid1.Options;
        form1.DBGrid1.Options:=form1.DBGrid1.Options-[dgEditing];
      end;
    end;
    procedure TForm1.DBGrid1ColExit(Sender: TObject);
    begin
      if form1.DBGrid1.SelectedField.DataType=ftboolean then
        form1.DBGrid1.Options:=originaloptions;
    end;
    procedure TForm1.DBGrid1CellClick(Column: TColumn);
    begin
      if form1.DBGrid1.SelectedField.DataType=ftboolean then
      begin
        form1.DBGrid1.SelectedField.DataSet.Edit;
        form1.DBGrid1.SelectedField.AsBoolean:=not form1.DBGrid1.SelectedField.AsBoolean;
        form1.DBGrid1.SelectedField.DataSet.Post;
      end;
    end;
      

  4.   


     
    ?在DBgrid里面可以加入一列checkbox吗?谢谢!(Iris) 20 4 8-5 00:47 管理 
    ?我现在想达到的效果是:在一个类似dbgrid的显示区域里面显示n行n列,每一行的前面有一个checkbox,通过点击checkbox标识该行被选择,画面(Iris) 20 0 8-4 20:10 管理 
    ?如何判断一个指针是否存在?谢谢!(Iris) 20 2 8-4 14:05 管理 
    ?高分求助!!winexec函数的第一个参数可以设置为相对路径吗(例如主文件所在目录或其上一层)?谢谢!(Iris) 50 4 7-30 17:32 管理 
    ?高分求助!!如何在程序中将csv文件的某一列设成同一个值?谢谢(Iris) 50 0 7-30 16:22 管理 
    ?****如何取得DirectoryListBox控件中被选中的文件的目录?(Iris) 20 2 7-29 11:24 管理 
    ?高分求助!!如何取得一个文件夹里的所有文件的文件名?(Iris) 80 7 7-29 10:20 管理 
    ?高分求助!!如何得到csv文件里的指定纪录行中的指定项目的内容?(Iris) 50 1 7-28 17:43 管理 
    ?高分求助!!如何让listbox的垂直滚动条始终显示在最下边?(Iris) 100 8 7-25 16:53 管理 
    ?.xls文件存成.csv文件后怎么不能修改啦!V.WorkBooks[1].WorkSheets[2].saveas('d:\12345.csv',XLcsv,'789');(Iris) 20 3 7-25 12:01 管理 
    ?高分求助!怎么把excel文件转换成csv文件呀?谢谢(Iris) 100 4 7-24 13:19 管理 
    ?高分求助!在delphi中如何获得excel文件的指定sheet的指定行列的值?谢谢!(Iris) 80 5 7-23 15:34 管理 
    ?高分求助!如何控制一个文件夹里的文件的排列顺序?例如:让文件按时间或名字排列?谢谢(Iris) 
     问了这么多问题,你怎么不揭贴啊,是不会吗?