Форум: "Начинающим";
Текущий архив: 2007.03.18;
Скачать: [xml.tar.bz2];
ВнизЦветной DBGrid Найти похожие ветки
← →
deras (2007-02-23 15:02) [0]Читал статью "Разноцветный грид". Вроде понятно... кроме одного. Как задать условие для разрисовки. Например, если в поле "age", значение 10, то текст в строке сделать синим.
← →
Ega23 © (2007-02-23 15:08) [1]
procedure TFClassConfig.dbgCOMUnitsGetCellParams(Sender: TObject;
Column: TColumnEh; AFont: TFont; var Background: TColor;
State: TGridDrawState);
var
ds:TDataSet;
begin
if not (Sender is TDBGridEh) then Exit;
ds:=TDBGridEh(Sender).DataSource.DataSet;
if ds.IsEmpty then Exit;
if ANSIUpperCase(Column.FieldName)="COMMSKSTR" then
begin
if ds.FieldByName("COMMsk").AsInteger=0 then
AFont.Color:=clRed
else
AFont.Color:=clBlue;
end;
if ANSIUpperCase(Column.FieldName)="COMTYPNAM" then
begin
Case ds.FieldByName("COMTypCod").AsInteger of
10 : AFont.Color:=clGreen;
20 : AFont.Color:=clAqua;
30 : AFont.Color:=clBlue;
else AFont.Color:=clGray;
end;
end;
end;
← →
Ученик чародея © (2007-02-23 15:08) [2]DBGrid:
DefaultDrawing=False;
задать обработчик события
OnDrawColumnCell(Sender: TObject; const Rect: TRect; DataCol: Integer; Column: TColumn; State: TGridDrawState)
Отрисовка через DbGrid.Canvas
← →
Desdechado © (2007-02-23 15:08) [3]
procedure TfrmPortNagr.gridNagrDrawColumnCell( Sender: TObject; const Rect: TRect;
DataCol: Integer; Column: TColumn; State: TGridDrawState );
begin
with( gridNagr ) do
if( Enabled and ( not( gdFocused in State ) ) and
( Column.FieldName = "CCONT" ) ) then
begin
if( qryPortNagr.FieldByName( "NSTATUS" ).AsInteger = PS_RESERVED ) then
begin
Canvas.Brush.Color := clMoneyGreen;
Canvas.FillRect( Rect );
end
else if( qryPortNagr.FieldByName( "NSTATUS" ).AsInteger in [ PS_NOTVALID, PS_EQUIPPED ] ) then
begin
Canvas.Brush.Color := clYellow;
Canvas.FillRect( Rect );
end;
DefaultDrawColumnCell( Rect, Column.Index, Column, State );
end;
end;
Страницы: 1 вся ветка
Форум: "Начинающим";
Текущий архив: 2007.03.18;
Скачать: [xml.tar.bz2];
Память: 0.45 MB
Время: 0.052 c