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

Сетка на выделенной строке в RxDbGrid   Найти похожие ветки 

← →
СержК   (2004-10-08 10:40) [0]

Уважаемые мастера подскажите.
Я в RxDbGrid вывожу аварийные события(объекты энергетики). В зависимости от ситуации каждая строка в гриде имеет свой цвет фона и шрифта.

Мне нужно на выделенной строке каким-то образом либо изменять цвет сетки, либо увеличить толщину линий в сетке, чтобы диспетчеру было удобно концентрировать внимание на конкретной выбранной строке.
В свойствах грида я ничего не нашел. Кто знает - подскажите ....


← →
Reindeer Moss Eater ©   (2004-10-08 10:45) [1]

Если ячейка выделена, то в стиль шрифта добавлять fsBold


← →
KSergey ©   (2004-10-08 10:51) [2]

В событии рисования передается флаг, что это тек. ячейка (вроде не вру?)


← →
ЮЮ ©   (2004-10-08 10:51) [3]

>Мне нужно на выделенной строке каким-то образом либо изменять цвет сетки, либо увеличить толщину линий в сетке

У самой сетки цвет забит в коде, а толщина - одинагова для всех ячеек. Поэтому для нужной строки в OnDraw... нарисуй свой прямоугольник


← →
СержК   (2004-10-08 10:57) [4]

Извиняюсь за может слишком простой вопрос. Просто мне до этого никогда не приходилось работать со свойствами строки в гриде.

Как узнать, что строка в гриде является - текущей(выбранной)?
Как для нужной строки в OnDraw... нарисовать свой прямоугольник ?


← →
КаПиБаРа ©   (2004-10-08 11:00) [5]

СержК   (08.10.04 10:40)
изменять цвет сетки

Цвет фона изменяй.


← →
СержК   (2004-10-08 11:07) [6]

Цвет фона и цвет шрифта я изменить могу, но не имею право. Это установлено нормами и прописаны в БД.

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


← →
Reindeer Moss Eater ©   (2004-10-08 11:23) [7]

А может тогда оставить энергетическую систему в покое?
От греха подальше.


← →
ЮЮ ©   (2004-10-08 11:28) [8]

type
 TRxDBGridAccess = class(TRxDBGrid);

...

procedure TForm1.RxDBGrid1DrawDataCell(Sender: TObject; const Rect: TRect;
 Field: TField; State: TGridDrawState);
begin
 if
   RxDBGrid1.Row - TRxDBGridAccess(RxDBGrid1).FixedRows =
   TRxDBGridAccess(RxDBGrid1).DataLink.ActiveRecord
 then // рисуется текущая запись
   RxDBGrid1.Canvas.Font.Style := RxDBGrid1.Canvas.Font.Style + [fsBold]
 else
   RxDBGrid1.Canvas.Font.Style := RxDBGrid1.Canvas.Font.Style - [fsBold];
   RxDBGrid1.DefaultDrawDataCell(Rect, Field, State);
end;


← →
СержК   (2004-10-08 11:38) [9]

Спасибо. Сейчас буду пробовать.



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

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



Память: 0.47 MB
Время: 0.021 c
10-1050575071
Vofka
2003-04-17 14:24
2004.10.24
Помогите начинающему с CORBA


1-1096054352
Dimaxx
2004-09-24 23:32
2004.10.24
Поиск в бинарном файле


14-1097150551
Lool
2004-10-07 16:02
2004.10.24
Еще одна задача


14-1096813014
Yuri Btr
2004-10-03 18:16
2004.10.24
Потоковый звук


1-1097149684
Timego
2004-10-07 15:48
2004.10.24
method pointer ВМЕСТО regular procedure?




   Наверх