Перейти к содержанию
Fire Monkey от А до Я
  • 0

Выбор ImageIndex в ListView


Dmitry Stolyarov

Вопрос

Добрый день, подскажите, пжл, новичку...

Есть ListView и ImageList с двумя картинками. В ListView Item добавлен Image. ListView заполняю из БД и пытаюсь вывести картинку в зависимости от значения поля БД, но в независимости от значения БД выводится одна и та же картинка.. Такое нельзя провернуть?

procedure TForm6.ListViewNAMEUpdateObjects(const Sender: TObject;
  const AItem: TListViewItem);
  var IItem:TListItemImage;
begin
 IItem:= aItem.Objects.FindDrawable('Image4') as TListItemImage;
if (IItem<>nil) then
with FDQuery1 do
 begin
 First;
 while not Eof do
  begin
   if FDQuery1FK_PRICE.AsInteger = 1 then begin
    IItem.ImageIndex:=1
   end else
      begin
         IItem.OwnsBitmap := True;
     IItem.ImageIndex:=0;
      end;
   Next;
  end;
 end;
end;

 

Изменено пользователем Dmitry Stolyarov
код
Ссылка на комментарий

Рекомендуемые сообщения

  • 0

В берлине ImageList работает штатно.

Я не понимаю, что происходит в вашем цикле

для каждого итема вы пробегаете по всему датасету и если последняя запись поле FK_PRICE = 1 то  IItem.ImageIndex:=1, иначе 0

а зачем тогда бежать? просто сделайте Last и все.

Думаю, что -то с логикой не то, не с ImageList

И почему, если ImageIndex:=0 То OwnsBitmap=true а иначе - нет???

Ссылка на комментарий
  • 0

В Imagelist загружены 2 картинки. Странность заключается в том, что после цикла картинка выводится во всех итемах, но только последняя по циклу. Т.е. Если после обхода последняя установилась с индексом 1, то по всем итемам устанавливается картинка с индексом 2. 

Ссылка на комментарий

Присоединяйтесь к обсуждению

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

Гость
Ответить на вопрос...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...