DBGRIDEH内嵌的CHECKBOX,在数据库中只有一条记录时,点击选择了checkbox,但数据库中的值改变不了?但当记录数大于一条的时候,选择一次checkbox后,选择另外的一条记录,则刚刚选择的数据库中值就改变了。是不是记录数一条的时候数据集没有移动就不行,这怎么就决呢?DBGRIDEH是行选的。

解决方案 »

  1.   

    检查一下你的dataset的state是否是dsedit状态
    然后确定你的checkbox 已经定义了 √是 1或true。X是0或false
      

  2.   

    dataset的state?什么属性,我的是D7
      

  3.   

    数据库有多条记录时,你在记录间移动,DELPHI自动调用了dataset.post。当只有一条记录时,你要加代码保存(dataset.post)。
      

  4.   

    在什么事件里,我试了几种总报错啊dataset not in edit or insert mode.
      

  5.   

    先要将你的dataset.edit然后再允许修改,再dataset.post
      

  6.   

    点击checkbox框的时候,怎样及时的执行
    dataset.Edit;
    dataset.post;
    哪个事件可以,OnMouseDown是不行的
      

  7.   

    用个菜单让他进入编辑状态
    onchange后post就可以了
      

  8.   

    那样的话,我还不如在选择以后用按钮执行了(这样左时可以的)。我现在时要求点击的同时就立刻改变数据库的值,现在我是把他放在了OnMouseMove里了,就是鼠标在DbGrid上移动时界面有点闪,不太好看。大伙再帮我想想!:)