Delphi 2010:在 vsReport ViewStyle 中对 TListView 项进行分组

问题描述 投票:0回答:1

首先这可能吗?

我有两个问题 - 第一个是在运行时创建时无法让组出现在 TListView 中。 我正在使用以下代码:

lg := lvResults.Groups.Add;
lg.Header := 'New Starters';
lg.GroupID := 0;

第二个是,即使我在设计时创建组 - 我可以在表单设计器中看到它们 - 它们在运行时不存在 - 即使在我刷新数据以添加我自己的项目之前...

补充: 我已经确认下面的答案适用于一个原始项目。 然而,它在我想使用它的项目中失败了! 我已经用调色板中的新 TListView 替换了 TListView,但没有任何乐趣。 列表视图位于 tpagecontrol 上

delphi vcl delphi-2010 tlistview
1个回答
7
投票

下面的代码会产生可见的组。您是否忘记将

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 文档中有一个代码示例。

© www.soinside.com 2019 - 2024. All rights reserved.