加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 大数据 > 正文

delphi – Listview Subitem图像

发布时间:2020-12-15 09:36:14 所属栏目:大数据 来源:网络整理
导读:我在这里遗漏了一些明显的东西,我找不到将 ImageIndex分配给TListView的Subitem的方法. 我在vsReportMode中设置了Listview,有2列,我可以轻松地将ImageIndex分配给第一列Items,例如: ListView1.Items[0].ImageIndex := 0;ListView1.Items[1].ImageIndex := 1
我在这里遗漏了一些明显的东西,我找不到将 ImageIndex分配给TListView的Subitem的方法.

我在vsReportMode中设置了Listview,有2列,我可以轻松地将ImageIndex分配给第一列Items,例如:

ListView1.Items[0].ImageIndex := 0;
ListView1.Items[1].ImageIndex := 1;
ListView1.Items[2].ImageIndex := 2;

我以为我可以为它的SubItems分配一个ImageIndex,就像这样(这显然不起作用,因为SubItems似乎不存在该属性)

ListView1.Items[0].SubItems[0].ImageIndex := 0;
ListView1.Items[1].SubItems[0].ImageIndex := 1;
ListView1.Items[2].SubItems[0].ImageIndex := 2;

我是否再次困惑自己,或者SubItem Images没有这样的属性?

解决方法

请改用SubItemImages:

var
  LI: TListItem;
  i: Integer;
begin
  ListView1.ViewStyle := vsReport;
  for i := 0 to 1 do
    with ListView1.Columns.Add do
      Caption := 'Column ' + IntToStr(i);

  for i := 0 to ImageList1.Count - 1 do
  begin
    LI := ListView1.Items.Add;
    LI.Caption := Format('Item %d',[i]);
    LI.ImageIndex := i;
    LI.SubItems.Add(Format('SubItem %d',[i]));
    LI.SubItemImages[0] := i; // SubItems[ColumnIndex] := ImageIndex;
  end;
end;

这导致了

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读