Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.12.19;
Скачать: CL | DM;

Вниз

Картинки в ListView   Найти похожие ветки 

 
Диман   (2004-05-10 02:35) [0]

Привет, всем!
Есть проблема.
Не получается отображать картинки в ListView.
Выставляю в Options lvoSubItemImages = true, lvoOwnerDrawFixed = true

В VCL картинки выводились просто у тех SubItems"ов, которые укажешь
Картинки живут в ImageList"e

В КОЛ проблемой для меня оказалось такое сделать....
Просто после таких действий ничего не отображается в ListView


 
Gandalf ©   (2004-05-10 12:12) [1]

А ты сам  ImageList навесил? А индексы картинок на элементы указал?


 
Диман   (2004-05-10 13:18) [2]

Получилось вывести картинки у 1-го Itema (который в VCL-Caption)
Просто убрал из Options  lvoOwnerDrawFixed = true, вернее сделал  lvoOwnerDrawFixed = false.

Но появилась другая проблема, не могу выставить картинки для определенных SubItems"ов

Использую версию KOL&MCK 1.91

Есть hlp файл по KOL&MCK v.0.94
так там для ListView есть некое свойство, которого, имхо, нет в v.1.91 -
property LVItemImgIdx[ Idx, Col: Integer ]: Integer;
типа можно выставить картинку для любого SubItem"a

Может кто подскажет, как картинку для SubItem"a выводить?

Copyright (C) by Vladimir Kladov, 1999-2001


 
Диман   (2004-05-10 13:51) [3]

Решил проблему через API, используюя SendMessage

Но хотелось бы узнать, как можно просто используя KOL сделать такое


 
Gandalf ©   (2004-05-12 13:01) [4]

Картинка выводиться сама - если заданы картинки, индексы и опции ListView... посмотри примеры с ListView...


 
Диман   (2004-05-12 14:13) [5]

посмотри примеры с ListView...
какие примеры??? все которые видел. там такого нет...
Для первого Itema могу иконку выводить, а для SubItem"ов не могу
как их задать то, индексы иконок, для SubItem"ov?

ListView у меня имеет стиль lvsDetail

в Options есть только lvoSubItemImages, его выставлюя в True
есть ImageList с картинками

Проблема в том, как, например, для 3-его SubItema выводить картинку....
Какой метод, свойство? Я не нашел...


 
SPeller ©   (2004-05-12 14:49) [6]

LVSetItem(), и там всё что хочешь.


 
Диман   (2004-05-12 15:58) [7]

Спасибо...

В принципе я сделал так через API, как писал выше, заполнил структуру TC_ITEM, затем полслал месадж LVM_SETITEM

var
...
 lvItem: TLVITEM;
...
begin
 ....
    lvItem.mask:= LVIF_IMAGE or LVIF_TEXT;
    lvItem.iItem:= i;  {строка в ListView, в которой надо будет рисовать}
    lvItem.iSubItem:= 3; {тут понятно, в 3-tv, вернее 4-ом столбце}
    lvItem.state:= 0;
    lvItem.stateMask:= 0;
    lvItem.cchTextMax:= 10;
    lvItem.iImage:= 3; {номер иконки}
    lvItem.pszText:= "Собственно, сам текст Items-a";
    SendMessage(ListView2.Handle, LVM_SETITEM, 0, Integer(@lvItem));
 ...
end;



Страницы: 1 вся ветка

Текущий архив: 2004.12.19;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.024 c
1-1102075168
Muhan
2004-12-03 14:59
2004.12.19
Как в StringGrid реагировать на щелчок правой кнопки мыши?


3-1101117504
Palladin
2004-11-22 12:58
2004.12.19
Access и begin transaction


3-1100841839
S@lik
2004-11-19 08:23
2004.12.19
InterBase


1-1102349535
avsam
2004-12-06 19:12
2004.12.19
ASCII UTF-8 ANSI


14-1101894851
Koala
2004-12-01 12:54
2004.12.19
Поделитесь мнением, впечатлением (Ноутбук)