cxgrid - 设置所有复选框已选中

时间:2013-12-09 15:55:52

标签: delphi devexpress delphi-xe4 tcxgrid

我正在使用cxGrid。我的网格中有一个字段(列),它是布尔类型(true / false),在网格中表示为一个复选框。如何在按钮单击时选中(或取消选中)列中的所有复选框?

它看起来像这样:

enter image description here

现在我希望,在点击按钮时,在我保存所有内容之前检查这3个复选框。 左边的数据(USERS)来自一个表,右边的数据来自一个查询。所有内容的SAVE都转到一个单独的LOG表中。

当我点击“全部检查”按钮时,结果:

enter image description here

我可以运行更新查询:更新MYFIELD设置SELECTED ='2'; 但我更感兴趣的是操纵网格本身。简单......

2 个答案:

答案 0 :(得分:0)

您必须在表单的某处添加一个按钮或弹出菜单,以接受全部检查'命令',或者甚至可以在列标题中放置一个复选框。然后浏览基础数据集并设置所有字段值。不要忘记DisableControls / EnableControls。

答案 1 :(得分:0)

在我的表中添加了一个额外的字段(布尔类型),并将其在cxGrid中的属性更改为复选框的属性。然后单击按钮:

with uniquery1 do begin
  Active:=False;
  sql.Clear;
  SQL.Add('update users set selected = 0'); //or '1'
  execSql;
end;
Uniquery1.Refresh;

我发现这是最简单的方法....