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

Вниз

ListBox row подсветка?   Найти похожие ветки 

 
Eugenex   (2003-01-13 11:11) [0]

Как изменить цвет background у определенной строки ListBox ?
Которая в неком поле(Subitem) имеет такое то значение.


 
Eugenex   (2003-01-13 11:13) [1]

Sorry, опечатка: не ListBox, а ListView !


 
Рыжик ©   (2003-01-13 11:23) [2]

procedure TForm1.ListView1CustomDrawItem(Sender: TCustomListView;
Item: TListItem; State: TCustomDrawState; var DefaultDraw: Boolean);
begin
if <чего-то там> then
ListView1.Canvas.Brush.Color:=clBlue
else
ListView1.Canvas.Brush.Color:=clWhite;
end;


 
Eugenex   (2003-01-13 14:28) [3]

Ну почти))) но чувствую себя неважно!((
Вот сделал:
procedure mainf.ListView1CustomDrawItem(Sender: TCustomListView;
Item: TListItem; State: TCustomDrawState; var DefaultDraw: Boolean);
begin
IF ListView1.Items.Count > 2 then
IF ListView1.Items.Item[ListView1.Items.Count-2].SubItems.Strings[4] = "Total"
then ListView1.Canvas.Brush.Color:=clAqua;
end;

Выделяет на строку ниже. Верно по коду так и есть. Если сделать
ListView1.Items.Count-1 то полный аут.(


 
Рыжик ©   (2003-01-13 14:44) [4]

if Item.SubItems.Strings[4] = "Total"
then ListView1.Canvas.Brush.Color:=clAqua //закрашиваем Total
else ListView1.Canvas.Brush.Color:=clWhite;//остальные не закрашиваем




 
Eugenex   (2003-01-14 10:37) [5]

Привет Рыжик!

Номер не пройдет!))
Смысл следующий: наполняется вьювер данными, и по ходу дела
если в 5-м столбе это слово "total" то всю строку надо подсвечивать.
Причем начиная с ПЕРВОГО столбика, в то время как слово ТОЛЬКО во 5-м!

Ех,не мала баба клопоту, а купила...дельфи!)))


 
still ©   (2003-01-14 10:50) [6]

procedure TfmMain.lvSwLogAdvancedCustomDrawSubItem(Sender: TCustomListView;
Item: TListItem; SubItem: Integer; State: TCustomDrawState;
Stage: TCustomDrawStage; var DefaultDraw: Boolean);
begin
if StrToInt(Item.Caption)<3 then
begin
Sender.Canvas.Brush.Color := clRed;
Sender.Canvas.Font.Color := clWhite;
end;
if (Item.SubItems[0][1]="*") or (Item.SubItems[0][1]=".") then
begin
Sender.Canvas.Brush.Color := clSilver;
Sender.Canvas.Font.Color := clBlue;
end;
end;

Вот. Если в первой колонке число меньше 3, то закрашивает строку красным.
Если вторая колонка начинается с * или ., то закрашивает синим и менят цвет текста.


 
Eugenex   (2003-01-14 19:17) [7]

СПАСИБО !!!

Вопрос в догонку - сколько данных maximum (в кб) можно закачать в ListView ?



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

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

Наверх




Память: 0.48 MB
Время: 0.014 c
1-72229
ihtiandr
2003-01-14 15:34
2003.01.23
EXE file


1-72289
shok
2003-01-15 09:34
2003.01.23
password


4-72595
gunner
2002-12-06 11:23
2003.01.23
Проблема вызова функции из сервиса соединения с БД из DLL


3-72120
Sirus
2002-12-31 07:19
2003.01.23
Как программно переименовать алиас BDE???


14-72498
KDS
2003-01-06 15:24
2003.01.23
Отчеты разные всякие, блин