1

当我尝试计算一个组中的项目数时,我得到了集合中的项目总数。您如何获得每个组中的项目数?

4

2 回答 2

4

这可能是最简单的方法。

procedure TForm1.Click(Sender: TObject);
begin
  ShowMessage(IntToStr(GetNumItemsInGroup(1)));
end;

function TForm1.GetNumItemsInGroup(const GroupID: integer): integer;
var
  i: Integer;
begin
  result := 0;
  assert((GroupID >= 0) and (GroupID <= ListView1.Groups.Count - 1));
  for i := 0 to ListView1.Items.Count - 1 do
    if ListView1.Items.Item[i].GroupID = GroupID then
      inc(result);
end;
于 2010-05-30T00:54:28.790 回答
1

仅在 Vista 和更高版本下,LVM_GETGROUPINFOandLVM_GETGROUPINFOBYINDEX消息返回一个 LVGROUP 结构,该结构具有一个cItems指定组中项目数的成员。

于 2010-05-31T18:26:24.067 回答