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

Вниз

Ошибка в ListView на onCustomDrawItems   Найти похожие ветки 

 
TYB   (2006-04-14 12:02) [0]

Замучал вот такой глюк, сначала код:
procedure TForm1.OnCustomDrawItem(Sender: TCustomListView;
 Item: TListItem; State: TCustomDrawState; var DefaultDraw: Boolean);
begin
If Item <> nil Then
If  Условие Then
with TCustomListView(Sender) Do
 begin
 Canvas.Font.Style :=[fsBold]
end;
end;

Т.е. при определенном условии пункты в ListView отображаются
жирным шрифтом.
Так вот когда присутсвует код выше происходит по сути
полный сбой программы она зависает, компоненты на форме
не отрисовываются.
Когда ремарю эту строчку Canvas.Font.Style :=[fsBold]
все работает как часы.

Сбой точно из-за строки выше, но вот почему не пойму.
Может кто сталкивался с этим?


 
Gero ©   (2006-04-14 16:49) [1]

Я сталкивался с подобным. Дело наверняка в кривой реализации VCL. Проблема решилась только отказом от использования VCL-customdraw и отлове NM_CUSTOMDRAW, где и производилась прорисовка.


 
kilkennyCat ©   (2006-04-14 18:25) [2]

with TListView(FindComponent("...." + inttostr((Sender as Tcomponent).tag))) do
 Font.style...

Жутко выглядит, но у меня так заработало.


 
kilkennyCat ©   (2006-04-14 18:25) [3]

гм... прошу прощения, это не для итема....



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

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

Наверх




Память: 0.47 MB
Время: 0.041 c
15-1146508771
Константинов
2006-05-01 22:39
2006.05.28
Проблема с клавиатурой.


6-1137249559
CrossOut
2006-01-14 17:39
2006.05.28
получение WML кода через WAP шлюз


1-1145652708
sda
2006-04-22 00:51
2006.05.28
Закрасить Canvas цветом


15-1146557352
SPeller
2006-05-02 12:09
2006.05.28
Размерчик :)


2-1147256877
Alex_C
2006-05-10 14:27
2006.05.28
Как заставить появиться Hint?