在dbgrideh 第一列加入checkbox,但checkbox总是不能选择! ( 积分: 50 )

  • 主题发起人 主题发起人 delphi3722
  • 开始时间 开始时间
D

delphi3722

Unregistered / Unconfirmed
GUEST, unregistred user!
在dbgrideh 第一列加入checkbox,但checkbox总是不能选择!
ADOQuery1 locktype 为ltBatchOptimistic
SQL为 'select 0 as checkitem from table '
Gitem := DBGridEh1.Columns.Add;
Gitem.FieldName := 'checkitem';
Gitem.Title.Caption := '选择';
Gitem.Checkboxes:=true;
Gitem.ReadOnly:=false;
Gitem.KeyList.Add('0');
Gitem.KeyList.Add('1');
Gitem.Title.TitleButton := true;
Gitem.Title.Alignment := taCenter;
Gitem.Alignment := taLeftJustify;
Gitem.Width := 30;
 
有人知吗,顶上去
 
你看看是不是設置為只讀的了。
 
是啊ADOQuery1 open前 fieldbyname ('checkitem').asstring 设置 readonly=false
能选但不知为什么.一离开 dbgrideh 就把他还原为原来的值!!
 
有更好的方法吗?
 
来自:fsse4000, 时间:2007-12-6 20:16:43, ID:3857512
要对应字段,ADO的你要用批量处理的方式,DataSet可以。
但都必须有对应的字段,哪怕是虚拟字段都行。

虚拟字段我试了也是一样的,能选但会自动恢复为原来的值!
 
一刷新肯定会变回原来的false 状态
select 0 as checkitem
 
设字段类型要为Boolean型或转为该型,也可用MemtableEh控件虚N一个列进行操作!
 
后退
顶部