Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

ListView [D6]


Ламонов Олег ©   (2007-05-12 16:47:00) 

Уважаемые мастера.
Скажите, как изменить Canvas.Brush 0 колонки в ListView.
То есть, где по умолчанию рисуются checkbox или пиктограммы ImageList.
Все кроме 0,он изменяет, а ее не хочет.
Спасибо.


{RASkov}   (2007-05-12 19:30:00) [1]

[3] Тоже самое, я не обновил ветку перед отправкой поста)


{RASkov}   (2007-05-12 19:28:00) [2]

> [2] Ламонов Олег   (12.05.07 19:13)

procedure TForm1.ListView1 AdvancedCustomDrawSubItem(
 Sender: TCustomListView; Item: TListItem; SubItem: Integer;
 State: TCustomDrawState; Stage: TCustomDrawStage;
 var DefaultDraw: Boolean);
begin
if (Item.Index=2) and (SubItem=2) then Sender.Canvas.Brush.Color:=clRed else Sender.Canvas.Brush.Color:=clWhite;
end;


DVM   (2007-05-12 19:26:00) [3]


> Ламонов Олег   (12.05.07 19:13) [2]

CustomDraw SubItem() ?


Ламонов Олег   (2007-05-12 19:13:00) [4]

Для более понятного примера.
Как получить, например, доступ к 3 строке и 3 колонки и закрасить ее красным?

Вообще, как достать Rect у Item?
если рисовать стандартно, что-то не так:

procedure TListRecords_f.BookCustomDrawItem(Sender: TCustomListView;
 Item: TListItem; State: TCustomDrawState; var DefaultDraw: Boolean);
var
  i:Integer;
begin
  if Item = nil then
     Exit;
  i := Item.Index;
  if i = 3 then
     Sender.Canvas.brush.Color := clRed
  else
     Sender.Canvas.brush.Color := clwhite;

end;


Юрий Зотов   (2007-05-12 18:45:00) [5]

У колонок нет кисти, она одна для всего ListView. Скорее всего, что-то Вы не так рисуете.


Наверх

Титульная страница Поиск, карта сайта Написать письмо