Текущий архив: 2005.12.11;
Скачать: CL | DM;
ВнизОкраска ячейки в ListView Найти похожие ветки
← →
guru-guru © (2005-11-15 13:16) [0]Помогите. Нужно в ListView закрасить ТОЛЬКО одну ячейку.
← →
guru-guru © (2005-11-15 14:03) [1]Блин, ну что неужели никто незнает?
Может есть аналоги данного компонента?
← →
Джо © (2005-11-15 14:49) [2]Попробуй сделать через механизм OwnerDraw
← →
guru-guru © (2005-11-15 15:07) [3]А примерчик можно?
← →
Джо © (2005-11-15 15:19) [4]
> [3] guru-guru © (15.11.05 15:07)
> А примерчик можно?
Не можно. Некогда да и лень за тебя в Справку лезть.
← →
guru-guru © (2005-11-15 15:27) [5]И на этом спасибо.
← →
simpson © (2005-11-15 15:30) [6]Не в примерах счастье. :)
Я вот при перерисовке листвью наткнулся на другую проблему.
Пример - что-то вроде этого:
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;
На форме листвью со стилем "репорт", если строка выбрана, то содержимое первой колонки закрашивается красным.
Страницы: 1 вся ветка
Текущий архив: 2005.12.11;
Скачать: CL | DM;
Память: 0.45 MB
Время: 0.04 c