Форум: "Основная";
Поиск по всему сайту: delphimaster.net;
Текущий архив: 2002.05.02;
Скачать: [xml.tar.bz2];




Вниз

Ну помогите же! 


f0rm   (2002-04-16 23:52) [0]

Блин. Может я тупой но немогу никак программно сделать нужный мне итем в литвьюве на красном фоне

ЗЫ: Отдельный Item listview"a закрасить отдельным цветом?



Ra   (2002-04-17 05:56) [1]

а в чем проблема?
ставим OwnerDraw=true и пишем обработчик события OnDrawItem



f0rm   (2002-04-17 11:52) [2]

Ну вот допустим у меня есть listview1.items[i] как мне сделать, чтобы при нажатии на копку фон этого итема зарисовывался красным цветом?



Starkom   (2002-04-17 11:56) [3]

в ListBox2DrawItem:
if (odSelected in State) then
begin
ListBox2.Canvas.Pen.Color:=clHighLight;
ListBox2.Canvas.Brush.Color:=clHighLight;
ListBox2.Canvas.Font.Color:=clRed;
end;
ListBox2.Canvas.Rectangle(Rect);
ListBox2.Canvas.TextOut(Rect.Left, Rect.Top, ListBox2.Items[Index])

прямо код свой кинул - сам наверное разберешься, там просто



exchoper   (2002-04-17 12:48) [4]

procedure TfmMain.lvTestCustomDrawItem(Sender: TCustomListView;
Item: TListItem; State: TCustomDrawState; var DefaultDraw: Boolean);
var
NodeRect: TRect;
begin
with lvLocsRes.Canvas do
begin
NodeRect := Item.DisplayRect(drBounds);
case integer(Item.Data) of
0 : Brush.Color:=clBlue;
else Exit; end;
FillRect(NodeRect);
end;
end;



exchoper   (2002-04-17 12:49) [5]

procedure TfmMain.lvTestCustomDrawItem(Sender: TCustomListView;
Item: TListItem; State: TCustomDrawState; var DefaultDraw: Boolean);
var
NodeRect: TRect;
begin
with lvtest.Canvas do
begin
NodeRect := Item.DisplayRect(drBounds);
case integer(Item.Data) of
0 : Brush.Color:=clBlue;
else Exit; end;
FillRect(NodeRect);
end;
end;



f0rm   (2002-04-17 16:44) [6]


> в ListBox2DrawItem:


2Starkom: А причем тут tlistbox?


> procedure TfmMain.lvTestCustomDrawItem(Sender: TCustomListView;
> Item: TListItem; State: TCustomDrawState; var DefaultDraw:
> Boolean);
> var


2exchoper: Закрашивать все итемы и я могу, а мне нужно закрасить один или несколько



exchoper   (2002-04-18 11:14) [7]

В моем варианте была закраска итемов только тех у которых в Data 1 прописана, остальные будут по-молчанию рисоваться, я же не выставляю DefaultDraw в FALSE а проседурка эта вызывается перед каждой прорисовкой итема, т.ч. все будет так как тебе надо, у меня все это отлично работает и именно для отдельных итемов, ты попробуй...



f0rm   (2002-04-18 17:31) [8]


> В моем варианте была закраска итемов только тех у которых
> в Data 1 прописана, остальные будут по-молчанию рисоваться,
> я же не выставляю DefaultDraw в FALSE а проседурка эта вызывается
> перед каждой прорисовкой итема, т.ч. все будет так как тебе
> надо, у меня все это отлично работает и именно для отдельных
> итемов, ты попробуй...


Пришлось отдельным итемам задавать indent разный




Форум: "Основная";
Поиск по всему сайту: delphimaster.net;
Текущий архив: 2002.05.02;
Скачать: [xml.tar.bz2];




Наверх





Память: 0.73 MB
Время: 0.022 c
1-2626            Molotov               2002-04-20 20:14  2002.05.02  
Корректная работа с файлами


1-2566            Po                    2002-04-19 12:29  2002.05.02  
Печать


1-2607            Alexandr (CAV)        2002-04-20 08:11  2002.05.02  
Ложное срабанывание двойного клика в rxDbGrid


1-2530            Room 666              2002-04-21 15:28  2002.05.02  
Применение функции проверки...


1-2536            55555                 2002-04-18 11:12  2002.05.02  
форма