Главная страница
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-1102105614
Bobby Digital
2004-12-03 23:26
2004.12.19
RichEdit


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


3-1100688870
md
2004-11-17 13:54
2004.12.19
как конвертировать NUMBER в STRING


14-1101370125
ИМХО
2004-11-25 11:08
2004.12.19
Слово о В.И.Ленине (Ульянове)


1-1102097199
A man
2004-12-03 21:06
2004.12.19
Self во внешних Юнитах