![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Изменение цвета записи в DbGrid [D7, MSSQL]
bushmen © (2004-01-14 12:59:00)
Каким образом можно изменить цвет строки в DbGrid в зависимости от значения параметра в столбце данной строки?
Mike Kouzmine (2004-01-14 13:56:00) [1]
Slider007 © (14.01.04 13:55) [5] И тебе спасибо
Slider007 (2004-01-14 13:55:00) [2]
а в RxLib или в EhLib это делается элементарно - в одну строку
bushmen (2004-01-14 13:15:00) [3]
>AbrosimovA ©
И тебе спасибо
bushmen (2004-01-14 13:14:00) [4]
>Johnmen ©
Спасибо.
AbrosimovA (2004-01-14 13:12:00) [5]
К примеру так:
procedure TMain.DBGrid1DrawColumnCell(Sender: TObject; const Rect: TRect;DataCol: Integer; Column: TColumn; State: TGridDrawState);
var X,Y: double;
begin
State:=[gdFocused];
if gdFocused in State then
with (Sender as TDBGrid).Canvas do begin
if DataCol>1 then begin
Case Table1.RecNo-1 of
0: begin
X:=0.5;
Y:=6;
end;
1: X:=0.2;
2..4,6,8,13..16: X:=0.1;
5,7,9..11: X:=20;
12: X:=100;
17: X:=10;
end;
Case Table1.RecNo-1 of
1..17: Y:=1000;
end;
if (Column.Grid.Fields[2].AsFloat>X)and(Column.Grid.Fields[2].AsFloat<Y) then
Font.Color:=clWindowText
else Font.Color:= clSilver;
end
else Font.Color:= clWindowText;
FillRect(Rect);
TextOut(Rect.Left, Rect.Top, Column.Field.AsString);
end;
DBGrid1.DefaultDrawColumnCell(Rect,DataCol,Column,State);
end;
Johnmen (2004-01-14 13:00:00) [6]
http://www.delphikingdom.com/helloworld/dbgridcolor.htm