Главная страница
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.072 c
6-1129401928
Black-Grin
2005-10-15 22:45
2006.01.29
NMFTP вызов LIST


15-1136185376
begin...end
2006-01-02 10:02
2006.01.29
С Днём рождения! 2 января


4-1132315951
Fanny
2005-11-18 15:12
2006.01.29
Как блокировать удаление (изменение) DLL-ки ?


2-1136891951
Foxtrot
2006-01-10 14:19
2006.01.29
Запись в порт при помощи API (стандартных средств)


15-1136193020
SergP
2006-01-02 12:10
2006.01.29
ИЕ. Начиная с какой версии поддерживается длина ключа 128 бит?