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

Вниз

TDBGrid.DefaultDrawColumnCell   Найти похожие ветки 

 
Sandman29 ©   (2006-01-05 13:02) [0]

Ставлю TDBGrid.DefaultDrawing = True, обработчик OnDrawColumnCell c рисованием картинки вместо одного из полей. dgRowSelect in Options.
Симптомы проблемы:
при нажатии стрелки вниз курсор доходит до последней отображаемой строки и останавливается, бегунок скроллинга продолжает менять свою позицию;
при использовании мышки получается шахматная доска - старая строка не закрашивается неактивным цветом полностью, в новой строке тоже закрашиваются не все поля. Пробовал установить TDBGrid.DefaultDrawing = False и первой строкой обработчика вызывать DefaultDrawColumnCell(...), проблема остается.
На всех машинах, кроме нескольких, работает. На этих нескольких стоит либо WinXP SP2, либо Win2003. В множестве работающих машин тоже есть WinXP SP2 и Win2003.
Что это за глюк, и есть ли другой способ, кроме как рисовать весь грид самому? Надеюсь, проблема в этих машинах, выпускать новую версию очень не хочется.


 
Sandman29 ©   (2006-01-06 10:13) [1]

Изучил реализацию DrawColumnCell, убедился, что все делаю правильно.
Поставил серию опытов (пересылал измененные версии заказчику и просил сообщить о результатах). Выяснилось, что пробелма связана с тем, что в глючном гриде есть невидимый в данном случае Column, он прячется в run-time, после чего не работает даже обычная прорисовка без всяких OnDraw...Cell. Придется обходить проблему с помощью использования двух почти одинаковых гридов вместо одного. Бред, да и только :(


 
Vemer ©   (2006-01-16 09:31) [2]

OnDrawColumnCell := False;
Call TDBGrid(Sender) default drawing procedure in end of your .DrawColumnCell procedure.



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

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

Наверх




Память: 0.47 MB
Время: 0.027 c
15-1134847610
lookin
2005-12-17 22:26
2006.01.29
Очепятки в серьезных изданиях...


2-1137154052
St74
2006-01-13 15:07
2006.01.29
Shareware приложение - каков алгоритм!


1-1135074479
leonidus
2005-12-20 13:27
2006.01.29
Как в моей программе просмативать документы Word`а?


6-1129880121
Rentgen
2005-10-21 11:35
2006.01.29
передача файла через TPAsync pro atTerminal


2-1136805696
LionMen
2006-01-09 14:21
2006.01.29
Ошибка: OLE error 800A03EC