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

Вниз

dxDbGrid   Найти похожие ветки 

 
ChILP   (2005-08-31 14:04) [0]

Добрый день. Такой вопрос: "Можно ли сделать, чтобы в компоненте dxDbGrid некоторые значение столбца не отображались(были невидимыми)". Т.е чтобы отображались не все значения данного поля, а только отвечающие некоторым условиям.


 
Leonid Troyanovsky ©   (2005-08-31 15:29) [1]


> ChILP   (31.08.05 14:04)  
> Добрый день. Такой вопрос: "Можно ли сделать, чтобы в компоненте
> dxDbGrid некоторые значение столбца не отображались(были
> невидимыми)". Т.е чтобы отображались не все значения данного
> поля, а только отвечающие некоторым условиям.


Можно.
VCL Reference TCustomDBGrid.OnDrawColumnCell

--
Regards, LVT.


 
ChILP   (2005-08-31 17:36) [2]

а нельзя ли по-подробнее, про OnDrawColumnCell

пробовал в обработчике событий onCustomDrawCell использовать цвет шрифта совпадающий с цветом фона при нахождении значения, которое не надо отображать

if ANode.Values[dbPackageList.ColumnByFieldName("POSTED").Index]="Y" then begin
     AColor:=clYellow;
     dbPackageListCALC_PACKAGE_POSTED_DATE.Font.Color:=clblack;
       end;
else begin
         AColor:=clwhite;
       dbPackageListCALC_PACKAGE_POSTED_DATE.Font.Color:=clwhite;
       end;


В результате с цветами всё ОК, но когда отображаются строки "белого" цвета  страница слегка "подвисает"........


 
Reindeer Moss Eater ©   (2005-08-31 17:39) [3]

В результате с цветами всё ОК, но когда отображаются строки "белого" цвета  страница слегка "подвисает"........

dbPackageListCALC_PACKAGE_POSTED_DATE.Font.Color:=clwhite;

Ну еще бы она не подвисала.
Ты ячейку должен в обработчике отрисовать, а не цвет фонта всего грида менять!

type TDrawColumnCellEvent = procedure (Sender: TObject; const Rect: TRect; DataCol: Integer; Column: TColumn; State: TGridDrawState) of object;


 
ChILP   (2005-09-01 10:55) [4]

С цветом фона и текста разобрался. Кстати, для dxDbGrid вместо OnDrawColumnCell используется onCustomDrawCell.
Теперь возникает вопрос, как поменять цвет ячейки, когда текущая запись активна (т.е. highLightColor и highLightTextColor не для всей строки, а для одной ячейки)?


 
Sam Stone ©   (2005-09-01 14:51) [5]

Т.к. грид ДБшный, то нельзя ли все это сделать на уровне запроса? Т.е. ненужные значения заменять пустой строкой.


 
ChILP   (2005-09-01 15:12) [6]

Sam Stone, смысл в том, что мне нужно отобразить всю строку кроме одного элемента. Принять нулевое значение поле не может, т.к используется тип дата. Я и решил попробовать заменить несуществующую дату на некоторую абстрактную, которую стоит сделать невидимой......


 
Sam Stone ©   (2005-09-01 15:49) [7]


> Принять нулевое значение поле не может, т.к используется
> тип дата

что, не получается присвоить дате значение NULL? :\

Можно еще поработать со свойством OnGetText, "затирая" выводимый текст


 
ChILP   (2005-09-01 16:26) [8]

Всё. Разобрался. Всем спасибо за помощь.



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

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

Наверх




Память: 0.48 MB
Время: 0.05 c
6-1117874430
Random(256)
2005-06-04 12:40
2005.09.25
Как установить соединение без компонентов...


14-1125159609
Juice
2005-08-27 20:20
2005.09.25
Выбор компьютера


4-1122535673
Kerk
2005-07-28 11:27
2005.09.25
Востановление удаленных файлов в NTFS


1-1125894450
record
2005-09-05 08:27
2005.09.25
ctrl+a --- ctrl+c в Memo


11-1106738023
RA
2005-01-26 14:13
2005.09.25
Как добавить картинку в PupupMenu?