Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.04.11;
Скачать: 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 вся ветка

Текущий архив: 2004.04.11;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.031 c
4-1075818303
Pul
2004-02-03 17:25
2004.04.11
стандартное диалоговое окно


14-1081886702
SergP
2004-04-14 00:05
2004.04.11
Хотя сейчас и не пятница, но .... (Задачка)


4-1075500637
Alchemist
2004-01-31 01:10
2004.04.11
Чтение текста из консольного окна


14-1082540052
ИМХО
2004-04-21 13:34
2004.04.11
Вопрос веб-спецам


7-1080146989
$tranger
2004-03-24 19:49
2004.04.11
HOOKs