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

Вниз

Listbox   Найти похожие ветки 

 
Bobby Digital ©   (2004-11-23 01:15) [0]

Нужно измеить цвет одного из элементов Listbox ... как это сделать или какой другой компонент-альтернативу использовать


 
GuAV ©   (2004-11-23 01:29) [1]


style = lbOwnerDrawFixed

procedure TForm1.ListBox1DrawItem(Control: TWinControl; Index: Integer;
 Rect: TRect; State: TOwnerDrawState);
begin
 with (Control as TListBox), Canvas do
begin
   if Index = 2 then Brush.Color := clRed;
  FillRect(Rect);
   TextOut(Rect.Left, Rect.Top, Items[Index]);
 end;
end;


 
Bobby Digital ©   (2004-11-23 11:37) [2]

это единственний способ?


 
ssk ©   (2004-11-23 12:10) [3]

>это единственний способ?

а что, этого разве недостаточно?
можно еще своего потомка от ListBox"а сделать с соответствующими методами и свойствами.


 
GuAV ©   (2004-11-23 12:50) [4]

Bobby Digital ©   (23.11.04 11:37) [2]
это единственний способ?


А чем не устраивает ?


 
Pirat1   (2004-11-23 13:16) [5]


> GuAV ©


А как сделать различным цвет каждой буквы нужной строки?


 
GuAV ©   (2004-11-23 13:48) [6]

Pirat1   (23.11.04 13:16) [5]
А как сделать различным цвет каждой буквы нужной строки?


Выводить по одной букве в цикле, меняя цвет. X - координату брать из PenPos, чтобы инициализировать для первой - MoveTo.


 
GuAV ©   (2004-11-23 13:49) [7]

PS: и зачем такое извращение ? :-)


 
Shama_n ©   (2004-11-23 15:57) [8]

> PS: и зачем такое извращение ?
Полагаю принципиально новая схема новогодней елки


 
ssk ©   (2004-11-23 16:54) [9]

человек наверное эффект перемигивающейся строки делает, как список в аське, при появлении новой записи


 
Bobby Digital ©   (2004-11-24 00:47) [10]

GuAV большое спасибо за помощь, но

Я не совсем понимаю с какиеми параметрами вызвается данная процедура

можешь написать что озн каждий параметр и где увазыватся
style = lbOwnerDrawFixed

ListBox1DrawItem();


 
GuAV ©   (2004-11-24 01:29) [11]

У ListBox есть свойство (property) style и событие (event) OnDrawItem. Параметры Control - сам ListBox,  Index - номер рисуемого item,  Rect -Месо рисуемого Item,  State - состояние его. TListbox + F1 поможет.


 
Bobby Digital ©   (2004-11-24 01:44) [12]

Большое спасибо !


 
Bobby Digital ©   (2004-11-25 11:46) [13]


> GuAV ©


а при вызове процедуры ListBox1DrawItem из другой процедуры что указать в параметре Rect
я вызываю так
ListBox1DrawItem(Listbox1,Listbox1.ItemIndex,...,ibOwenerDrawFixed);
а что в rect указать
...
вообщем мне нужно сравнить один лист с другим и в том случае если имеются одинаковые елементы то выделить их цветом


 
zz 5 ©   (2004-11-25 12:12) [14]

Bobby Digital ©   (25.11.04 11:46) [13]
Не надо вызывать эту процедуру явно, она будет вызываться сама, когда листбокс будет перерисовываться


 
GuAV ©   (2004-11-25 15:16) [15]

... а явно указать необходимость перерисовки можно методом Invalidate.


 
Mishenka   (2004-12-01 10:43) [16]


> GuAV ©   (24.11.04 01:29) [11]
> State - состояние его.


А как это состояние изменит вручную?



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

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

Наверх




Память: 0.5 MB
Время: 0.024 c
14-1100918820
DelphiN!
2004-11-20 05:47
2004.12.12
Отловить хакера


1-1101710156
maxistent
2004-11-29 09:35
2004.12.12
кард-ридеры


1-1101390432
Ricko
2004-11-25 16:47
2004.12.12
Использование DLL написанной на С++


9-1091933799
MonoLife
2004-08-08 06:56
2004.12.12
Не много о Sprite, подскажите.


1-1101888371
Yurij-7
2004-12-01 11:06
2004.12.12
Логин в сети