увидеть содержимое TImagelist во время выполнения - PullRequest
2 голосов
/ 15 ноября 2010

возможно вызвать во время выполнения редактор TImagelist, чтобы увидеть содержимое моего TImagelist?

Ответы [ 3 ]

6 голосов
/ 15 ноября 2010

Этот редактор является редактором времени разработки и недоступен во время выполнения, но вы можете нарисовать любое изображение, сохраненное в ImageList на любом холсте, вызвав его метод Draw и указав индекс изображения, которое вы хотите нарисовать. Пример кода ниже рисует все изображения, сохраненные внутри ImageList1 на Form1 в вертикальном списке:

var
  i : Integer;
begin
  for i := 0 to ImageList1.Count-1 do
    ImageList1.Draw(Form1.Canvas, 16, 16 + (i * ImageList1.Height),i,True);
end;
5 голосов
/ 15 ноября 2010

Вы можете оставить 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;
0 голосов
/ 16 ноября 2010

CodeSite имеет красивый регистратор кода.Вы можете использовать его для выгрузки растровых объектов и просмотра его в окне логгера.

http://www.raize.com/DevTools/CodeSite/Default.asp

...