Вниз
Скачать: CL | DM;

Отрисовка DBGrid   Найти похожие ветки 

 
av_mark ©   (2004-11-04 14:47) [0]

Есть DBGrid. Нужно вывести информацию разным цветом.
Переопределяем событие OnDrawColumnCell и в оном пишем

procedure TAccTrebList.DBGrid1DrawColumnCell(Sender: TObject;
 const Rect: TRect; DataCol: Integer; Column: TColumn;
 State: TGridDrawState);
begin
 if MyValue=1 then Column.Font.Color:=clGreen
 else Column.Font.Color:=clWindowText;
 Inc(FCount);
 inherited;
end;

MyValue - просто переменная для примера
FCount - счетчик количества вызовов события.
Запускаем - работает. FCount порядка 50-60 (колонки * строки).

Усложняем. Берем условие из базы

begin
 if Base.Fields[0].AsInteger=1 then... // дальше как и выше

FCount исчисляется десятками тысяч. Процессор загрущен под 100%

Вопрос - это глюк или фича? Как избавиться?


 
stone ©   (2004-11-04 14:55) [1]


> Вопрос - это глюк или фича?

Это бред

> Как избавиться?

Не писать бред.


 
Vlad ©   (2004-11-04 15:08) [2]

я не понял, inherited тут зачем?

> Column.Font.Color

TDBGrid(Sender).Canvas.Font.Color



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

Скачать: CL | DM;



Память: 0.45 MB
Время: 0.022 c
1-1100677690
Dmitrij_K
2004-11-17 10:48
2004.12.05
Скорость работы программы


1-1101284038
Alex_Bredin
2004-11-24 11:13
2004.12.05
Не могу записать значение в реестр


3-1100013025
denis24
2004-11-09 18:10
2004.12.05
datamodule1.tbl1


3-1099690550
Apophis
2004-11-06 00:35
2004.12.05
SQL c Where - неправильный (?) номер текущей записи...


1-1100772457
keymaster
2004-11-18 13:07
2004.12.05
Проблема с округлением




   Наверх