鉴于本人首次设定cxGrid的CheckBox的时候费了很大劲,发现很多人都会碰到这个问题,现在总结一下,以供各位互相学习借鉴。
步骤如下(不分先后):
1、 cxGrid添加完自己所需的所有字段后,增加一个字段用来显示CheckBox勾选框,比如叫做Selected(至于Caption要不要设定,看你自己喜欢是否想看到栏位名称了),那么tableview中此字段的DataBinding下面的FieldName就设为Selected,并注意Options中的Editing要为True,还要设定Properties属性的ValueChecked属性和ValueUnchecked属性,这里比如分别设定为'Y','N'。
2、设定cxGrid所连接的DataSource对应的ClientDataset,编辑ClientDataset,增加自己正常需要的所有字段,然后再增加一个单独作为我们设定的用来显示勾选的字段,前面已经有名字了'Selected'(宽度设定大于2个字节都可以了,也就是为了保存之前设定的'Y'或者'N',属性是WildString),需要注意的是:FieldType一定要选择fkInternalCalc,当然FieldName也是'Selected'。
3、在cxGrid的TableView的OnCellDblclick事件中写勾选与否的点击处理代码,比如如下例子:
procedure TfrmImmunIseplanAdd.cxGrid1DBTableView1CellDblClick(
Sender: TcxCustomGridTableView;
ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton;
AShift: TShiftState; var AHandled: Boole