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

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

Окраска ячейки в ListView


guru-guru ©   (2005-11-15 13:16:00) 

Помогите. Нужно в ListView закрасить ТОЛЬКО одну ячейку.


simpson   (2005-11-15 15:30:00) [1]

Не в примерах счастье. :)
Я вот при перерисовке листвью наткнулся на другую проблему.

Пример - что-то вроде этого:

procedure TForm1.FormCreate(Sender: TObject);
begin
 ListView1.OwnerDraw := True;
end;

procedure TForm1.ListView1DrawItem(Sender: TCustomListView;
 Item: TListItem; Rect: TRect; State: TOwnerDrawState);
begin
 if odSelected in State then
   with Sender.Canvas do
     begin
       Brush.Style := bsSolid;
       Brush.Color := clRed;
       Font.Style := [fsBold];
       FillRect(Classes.Rect(Rect.Left, Rect.Top,
         Rect.Left + Sender.Column[0].Width, Rect.Bottom));
       DrawText(Handle, PChar(Item.Caption), Length(Item.Caption), Rect,
         DT_WORDBREAK or DT_EXPANDTABS or DT_NOPREFIX or DT_LEFT or DT_VCENTER);
     end
 else
   with Sender.Canvas do
     begin
       Brush.Style := bsSolid;
       Brush.Color := clSilver;
       Font.Style := [];
       FillRect(Rect);
       DrawText(Handle, PChar(Item.Caption), Length(Item.Caption), Rect,
         DT_WORDBREAK or DT_EXPANDTABS or DT_NOPREFIX or DT_LEFT or DT_VCENTER);
     end
end;


На форме листвью со стилем "репорт", если строка выбрана, то содержимое первой колонки закрашивается красным.


guru-guru   (2005-11-15 15:27:00) [2]

И на этом спасибо.


Джо   (2005-11-15 15:19:00) [3]


>  [3] guru-guru ©   (15.11.05 15:07)
> А примерчик можно?

Не можно. Некогда да и лень за тебя в Справку лезть.


guru-guru   (2005-11-15 15:07:00) [4]

А примерчик можно?


Джо   (2005-11-15 14:49:00) [5]

Попробуй сделать через механизм OwnerDraw


guru-guru   (2005-11-15 14:03:00) [6]

Блин, ну что неужели никто незнает?
Может есть аналоги данного компонента?


Наверх

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