Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2003.03.31;
Скачать: CL | DM;

Вниз

Как изменить цвет выделения в ListView   Найти похожие ветки 

 
MrCOLOMBO   (2003-03-19 18:41) [0]

Каким образом можно изменить цвет выделения в ListView
, сделать его в виде рамки или сделать его полупрозрачным.
Я понимаю что это тяжко, но может есть "гуру" которые ответят на такой вопрос.
Или может кто посоветует что-либо готовое.


 
cLe0 ©   (2003-03-20 02:29) [1]

procedure TForm1.ListView1CustomDraw(Sender: TCustomListView;
const ARect: TRect; var DefaultDraw: Boolean);
begin
(Sender as TCustomListView).Canvas.Brush.Color := clTeal;
(Sender as TCustomListView).Canvas.FillRect(ARect);
end; // proc

{------------------------------------------------------------------------------}
procedure TForm1.ListView1DrawItem(Sender: TCustomListView;
Item: TListItem; Rect: TRect; State: TOwnerDrawState);
var
MIRect, SI1Rect, SI2Rect: TRect;

begin
MIRect := Rect;
MIRect.Right := ListView1.Columns.Items[0].Width;
SI1Rect := Rect;
SI1Rect.Left := MIRect.Right + 1;
SI1Rect.Right := SI1Rect.Left + ListView1.Columns.Items[1].Width;
SI2Rect := Rect;
SI2Rect.Left := SI1Rect.Right + 1;
SI2Rect.Right := SI2Rect.Left + ListView1.Columns.Items[2].Width - 1;
if Item.Focused then
begin
(Sender as TCustomListView).Canvas.Font.Color := clBlue;
(Sender as TCustomListView).Canvas.Brush.Color := clLime;
end
else
begin
(Sender as TCustomListView).Canvas.Font.Color := clWhite;
(Sender as TCustomListView).Canvas.Brush.Color := clOlive;
end;
(Sender as TCustomListView).Canvas.FillRect(Rect);
(Sender as TCustomListView).Canvas.TextRect(MIRect, MIRect.Left + 2, MIRect.Top, Item.Caption);

if Item.SubItems.Count = 1 then
begin
(Sender as TCustomListView).Canvas.TextRect(SI1Rect, SI1Rect.Left + 2, SI1Rect.Top, Item.SubItems.Strings[0]);
end; // if

if Item.SubItems.Count = 2 then
begin
(Sender as TCustomListView).Canvas.Font.Color := clYellow;
(Sender as TCustomListView).Canvas.Brush.Color := clRed;
(Sender as TCustomListView).Canvas.TextRect(SI2Rect, SI2Rect.Left + 2, SI2Rect.Top, Item.SubItems.Strings[1]);
end; // if

end; // proc



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

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

Наверх




Память: 0.47 MB
Время: 0.01 c
1-100292
Supreme 2
2003-03-19 00:41
2003.03.31
Переход в полноэкранный режим и обратно.


4-100504
Antosya
2003-01-27 14:48
2003.03.31
Как мне словить надатие комбинации клавиш?


3-100146
Roman Go
2003-03-12 12:34
2003.03.31
Где скачать Servis Pack for ADO


14-100417
VadimProgrammer
2003-03-13 19:37
2003.03.31
WebMoney и Delphi!!!


14-100447
Supreme 2
2003-03-13 18:54
2003.03.31
Почему я задаю вопросы, касающиеся девушек? Отвечаю: