Главная страница
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.026 c
3-1100087184
ruslanyd
2004-11-10 14:46
2004.12.12
Среднее между TDBLookupListBox и TListBox


1-1101715306
Molchanov
2004-11-29 11:01
2004.12.12
Удаление строк из TRichEdit


14-1101131287
sniknik
2004-11-22 16:48
2004.12.12
жизнеописания умученных сиадминов ;о))


1-1101896951
Алексей
2004-12-01 13:29
2004.12.12
графика


3-1100100160
by
2004-11-10 18:22
2004.12.12
Не срабатывают DEFAUL значения