当我尝试计算组中的项目数时,我会得到集合中的项目总数。你如何获得每组中的项目数量?
答案 0 :(得分: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;
答案 1 :(得分:1)
在Vista及更高版本中,LVM_GETGROUPINFO
和LVM_GETGROUPINFOBYINDEX
消息返回LVGROUP结构,该结构具有cItems
成员,指定该组中的项目数。