Форум: "Основная";
Текущий архив: 2005.09.25;
Скачать: [xml.tar.bz2];
Вниз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;
Скачать: [xml.tar.bz2];
Память: 0.46 MB
Время: 0.038 c