Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/joomla/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Delphi 在运行时查看TImagelist的内容_Delphi_Imagelist_Timagelist - Fatal编程技术网

Delphi 在运行时查看TImagelist的内容

Delphi 在运行时查看TImagelist的内容,delphi,imagelist,timagelist,Delphi,Imagelist,Timagelist,是否可以在运行时调用TImagelist编辑器以查看myTImagelist的内容?该编辑器是设计时编辑器,在运行时不可用,但您可以通过调用其draw方法并指定要绘制的图像的索引,在任何画布上绘制ImageList中保存的任何图像。下面的示例代码以垂直列表的形式绘制了Form1上ImageList1中保存的所有图像: var i : Integer; begin for i := 0 to ImageList1.Count-1 do ImageList1.Draw(Form1.C

是否可以在运行时调用TImagelist编辑器以查看my
TImagelist
的内容?

该编辑器是设计时编辑器,在运行时不可用,但您可以通过调用其draw方法并指定要绘制的图像的索引,在任何画布上绘制ImageList中保存的任何图像。下面的示例代码以垂直列表的形式绘制了Form1上ImageList1中保存的所有图像:

var
  i : Integer;
begin
  for i := 0 to ImageList1.Count-1 do
    ImageList1.Draw(Form1.Canvas, 16, 16 + (i * ImageList1.Height),i,True);
end;

您可以将ListView放到某个窗体上,然后执行以下操作:

var
  i: Integer;
  li: TListItem;
begin
  ListView1.LargeImages := ImageList1;
  ListView1.Items.BeginUpdate;
  try
    for i := 0 to Pred(ImageList1.Count) do
    begin
      li := ListView1.Items.Add;
      li.Caption := Format('Image %d', [i]);
      li.ImageIndex := i;
    end;
  finally
    ListView1.Items.EndUpdate;
  end;
end;

CodeSite有一个漂亮的代码记录器。您可以使用它转储位图对象,并在logger窗口中查看它


这是可能的,但使用imagelist组件编辑器侵入软件包的努力是无法与实现自己的编辑器相比的。