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

ListView1.Canvas   Найти похожие ветки 

← →
alex732   (2004-03-19 18:54) [0]

Добрый день... Необходимо в ListView-е выделить некий елемент..
Пишу

procedure TForm1.ListView1Click(Sender: TObject);
begin
ListView1DrawItem(ListView1,
    ListView1.Selected,
    ListView1.Selected.DisplayRect(drLabel),
    [odSelected]);
end;

procedure TForm1.ListView1DrawItem(Sender: TCustomListView;
 Item: TListItem; Rect: TRect; State: TOwnerDrawState);
begin
 with sender.Canvas do
   begin
     Brush.Color := clBlue;
     Font.Color := clWhite;
     FrameRect(Rect);
   end;
end;

Все нормально.. Но при переходе фокуса на другой объект выделение это пропадает...  Как мне от этого избавиться???


← →
Yuri Btr ©   (2004-03-19 19:30) [1]

Хе-хех
может это поможет ?

procedure TForm1.ListView1CustomDrawItem(Sender: TCustomListView;
 Item: TListItem; State: TCustomDrawState; var DefaultDraw: Boolean);
begin
if not Item.Checked
 then
  begin
   (Sender as TCustomListView).Canvas.Brush.Color:=clCream;
   (Sender as TCustomListView).Canvas.Font.Color:=clRed;
  end
 else
  begin
   (Sender as TCustomListView).Canvas.Brush.Color:=clMoneyGreen;
   (Sender as TCustomListView).Canvas.Font.Color:=clBlue;
  end;
if (Item.Caption="1") and Item.Checked
 then
  (Sender as TCustomListView).Canvas.Font.Style:=[fsBold];
DefaultDraw:=true;
end;


← →
Yuri Btr ©   (2004-03-19 19:32) [2]

Внутри ListView1CustomDrawItem
можешь делать любую проверку на состояние Item



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

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



Память: 0.45 MB
Время: 0.027 c
1-1080139485
satron
2004-03-24 17:44
2004.04.11
Как получить конкретный символ в Memo ?


1-1080200264
Raduga
2004-03-25 10:37
2004.04.11
Синронизация


1-1082399221
Kemik
2004-04-19 22:27
2004.04.11
Создание нового компонента.


6-1076260204
Kor@l
2004-02-08 20:10
2004.04.11
ICQ


1-1082454727
webpauk
2004-04-20 13:52
2004.04.11
Центровка надписи




   Наверх