我编了了小程序,用于学生考勤,delphi7+sqlserver2000。用到了cxgrid,其中有一列设置为checkbox类型,用于选择学生是否到课,未到课的就打个勾。现在我用的是onediting来响应打勾的事件,总体还不错,但还有些小问题:比如在一个学生上打了勾,接着想取消这个勾,在点击就没有反应,必须点一条别的记录,回过头来再点击这个学生才能取消。用oncellClick和oncellDbClick更不行,有一个是右键点击有反应,有一个根本没反应。求助各位大牛!到底哪个响应cxgrid的checkbox打钩、取消打钩的事件最好啊!

解决方案 »

  1.   

    附加一句: 
      .DataController.PostEditingData
      

  2.   

    CXGrid 功能强大 ,但不一定全适合。你可以用CellDraw 和获得焦点2个事件来完事
      

  3.   

    附加一句: .DataController.PostEditingData 还是问题依旧..................如何是好
      

  4.   

    to mysterx:应该是表格吧。然后有一列设置成了checkbox。这一列关联到一个表A的字段isncome(没来上课)。学生没来上课,就打个勾。
      

  5.   

    这个checked方式也碰到过类似的问题,后来不用事件响应了,用DATASET的AFTERPOST事件。如果非得用CHECKED事件,还是自己画个标准CHECKED在CELL里,cxGrid自己带的那个CHECKED有问题
      

  6.   

    TO jankercsdn:
        
    在CELL里自己画个CHECKED?能说的具体点吗?
      

  7.   

    cxGrid的CHECKED不会有问题,在cxgrid的表格里,CHECKED列既可是捆绑数据表的字段,也可以不是捆绑的,除非使用不当。
    楼主提供联系的方法,给你一个例子参考。