FMX Загрузка изображения из ресурсов на объект списка вызывает нарушение прав доступа - PullRequest
0 голосов
/ 13 июня 2018

У меня есть TListview с динамическим внешним видом.Я добавил объект изображения, и теперь я пытаюсь загрузить изображение из ресурсов в этот объект изображения, но получаю нарушение прав доступа.

Мой код:

procedure TfrmMain.btnAddPlayerClick(Sender: TObject);
var
  ListItem: TListViewItem;
  imgBanned: TListItemImage;
  InStream: TResourceStream;
begin
  InStream := TResourceStream.Create(HInstance, 'banned', RT_RCDATA);
  lvPlayers.BeginUpdate;
  try
    ListItem := lvPlayers.Items.Add;
    imgBanned := ListItem.Objects.FindObjectT<TListItemImage>('imgBanned');
    imgBanned.Bitmap.LoadFromStream(InStream);
  finally
    lvPlayers.EndUpdate;
    InStream.Free;
  end;
end;

РЕДАКТИРОВАТЬ: послеОтладка Я получаю следующее, но понятия не имею, что это значит.Я вижу, что это как-то связано с GetFieldAddress, но я не уверен, что это такое

enter image description here enter image description here

1 Ответ

0 голосов
/ 14 июня 2018

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

Проверьте документацию по свойству TListViewItem.Bitmap, как правильно обрабатывать это http://docwiki.embarcadero.com/Libraries/Tokyo/en/FMX.ListView.Appearances.TListViewItem.Bitmap

...