首先这可能吗?
我有两个问题 - 第一个是在运行时创建时无法让组出现在 TListView 中。 我正在使用以下代码:
lg := lvResults.Groups.Add;
lg.Header := 'New Starters';
lg.GroupID := 0;
第二个是,即使我在设计时创建组 - 我可以在表单设计器中看到它们 - 它们在运行时不存在 - 即使在我刷新数据以添加我自己的项目之前...
补充: 我已经确认下面的答案适用于一个原始项目。 然而,它在我想使用它的项目中失败了! 我已经用调色板中的新 TListView 替换了 TListView,但没有任何乐趣。 列表视图位于 tpagecontrol 上
下面的代码会产生可见的组。您是否忘记将
GroupView
设置为 True
?
procedure TMyForm.FormCreate(Sender: TObject);
var
Group: TListGroup;
Item: TListItem;
begin
ListView1.ViewStyle := vsReport;
ListView1.GroupView := True;
ListView1.Columns.Add.Caption := 'My column';
Group := ListView1.Groups.Add;
Group.Header := 'My header';
Item := ListView1.Items.Add;
Item.GroupID := Group.GroupID;
Item.Caption := 'My item';
Delphi 文档中有一个代码示例。