zoukankan      html  css  js  c++  java
  • 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: Boolean);
    begin
      inherited;
      cdsGROWSORT.Edit ;
      if cdsGROWSORT.FieldByName('Selected').AsString ='N' then
        cdsGROWSORT.FieldByName('Selected').AsString:='Y'
      else
        cdsGROWSORT.FieldByName('Selected').AsString:='N';
    end;

    4、初始化勾选栏位,否则就是灰色的而且已经勾选了,如何初始化,基本上就是遍历ClientDataSet然后把'Selected'字段值赋值为'N',也就是非勾选状态。比如如下例子:

      if (cdsGROWSORT.Active) and (cdsGROWSORT.RecordCount>0) then
      begin
        cdsGROWSORT.First;
        while not cdsGROWSORT.Eof do
        begin
          cdsGROWSORT.Edit ;
          cdsGROWSORT.FieldByName('Selected').AsString :='N';
          cdsGROWSORT.Next;
        end;
      end;

    注意:如果说cxGrid有很多数据记录要在窗口打开的时候就显示出来,那么你的ClientDataset的SQL语句不可以有'Selected'这个字段,也就是说这个字段不在你的数据查询记录中,不和数据库关联。

     

  • 相关阅读:
    Java实现 LeetCode 802 找到最终的安全状态 (DFS)
    Java实现 LeetCode 802 找到最终的安全状态 (DFS)
    Java实现 LeetCode 802 找到最终的安全状态 (DFS)
    Java实现 LeetCode 804 唯一摩尔斯密码词 (暴力)
    Java实现 LeetCode 803 打砖块 (DFS)
    Java实现 LeetCode 804 唯一摩尔斯密码词 (暴力)
    Java实现 LeetCode 803 打砖块 (DFS)
    Java实现 LeetCode 804 唯一摩尔斯密码词 (暴力)
    英文标点
    post sharp 与log4net 结合使用,含执行源码 转拷
  • 原文地址:https://www.cnblogs.com/jiangyuxuan/p/1658870.html
Copyright © 2011-2022 走看看