Вниз
Скачать: CL | DM;

Закрашивание строк в ListView   Найти похожие ветки 

 
Phoenix ©   (2005-10-19 10:17) [0]

Необходимо чтобы при выборе строки в LivtView она закрашивалась в другой цвет. Как это сделать?


 
Tonich ©   (2005-10-19 10:36) [1]

тебе придется писать обработчик события OnDrawItem


 
Phoenix ©   (2005-10-19 10:42) [2]

Каким образом? Пример можно?


 
Tonich ©   (2005-10-19 11:05) [3]

а погодь ты попробу поставь
RowSelect := True может тебе этого вполне достаточно будет


 
Tonich ©   (2005-10-19 11:15) [4]

ну а если все неподходит то можно например вот так описать обработчик


 if (odSelected in State) then
   begin
     LsvtView.Canvas.Brush.Color := clTeal;
     LsvtView.Canvas.Font.Color := clWhite;
   end;

  LsvtView.Canvas.FillRect(Rect);
  LsvtView.Canvas.TextOut(Rect.Left,Rect.Top,Item.Caption);
end;

только вот если у тебя есть еще и SubItem-ы то их строки придется также выводить

ListView.Canvas.TextOut(Rect.Left,Rect.Top,Item.Caption);
вот. Короче теперь все внутри Листа тебе придется рисовать самому, а оно тебе надо? ))


 
Tonich ©   (2005-10-19 11:17) [5]

а да забыл, что бы все это было действительным поставь свойство листа
OwnerDraw = True


 
Phoenix ©   (2005-10-19 13:26) [6]

А с момента про SubItems"ы можно поподробнее?


 
Tonich ©   (2005-10-19 13:43) [7]

нет ну что подробнее? что не понятно именно ? что вообще уже получилось?

Если у тебя есть SubItems"ы , ну там какой-то SubItems "бла бла бла"
то что бы его было видно в строке его придется выводить так же как и Caption то есть

SubTransList.Canvas.TextOut(Rect.Left+Shift,Rect.Top,Item.SubItems[Number]);


где Number - это номер твоего   SubItems
а Shift - это сдвижка с которой он будит отображен на канве.

и опять же это только текст , а если у тебя там картинки....


 
Phoenix ©   (2005-10-19 14:08) [8]

Всё что вами описанно выше получилось и весьма не плохо, за что большое спасибо. А вот сабитемы не видно, попробую сейчас этим способом :о)
З.Ы. Всё получилос., ещё раз огромное спасибо



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

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.03 c
3-1125670434
Analitik
2005-09-02 18:13
2005.11.13
как запостить файл в поле BLOB для INTERBASE?


2-1130174344
sam07
2005-10-24 21:19
2005.11.13
API функции


9-1120154182
cherep36
2005-06-30 21:56
2005.11.13
GLScene


14-1129577841
Nic
2005-10-17 23:37
2005.11.13
Сдача сессии.


2-1129785067
Jolik
2005-10-20 09:11
2005.11.13
Если функция возвращает динамический массив...




   Наверх