procedure TfrmModifyPrice.dxDBGrid1CustomDrawCell(Sender: TObject; ACanvas: TCanvas; ARect: TRect; ANode: TdxTreeListNode; AColumn: TdxTreeListColumn; ASelected, AFocused, ANewItemRow: Boolean; var AText: string; var AColor: TColor; AFont: TFont; var AAlignment: TAlignment; var ADone: Boolean); begin if cdsDetail.FieldByName('GoodsPrice').AsFloat = 0 then AColor := clGradientActiveCaption; if AColumn.ColIndex in [3,7] then AColor := clWhite; end;
就是在这里: procedure TfrmModifyPrice.dxDBGrid1CustomDrawCell(Sender: TObject; ACanvas: TCanvas; ARect: TRect; ANode: TdxTreeListNode; AColumn: TdxTreeListColumn; ASelected, AFocused, ANewItemRow: Boolean; var AText: string; var AColor: TColor; AFont: TFont; var AAlignment: TAlignment; var ADone: Boolean); begin
end; 根据一定地条件来画!
to songlian77(八國聯軍) 我是dxdbgrid. to arvid_gs(west) 拿出实例来. to lwk_hlj(披着狼皮的人) 是否少点东西.
参考下面这一段代码,只需要改变一下判断条件,注释的是另一种方式改变前面字体的。 procedure TForm1.DBGridDrawColumnCell(Sender: TObject; const Rect: TRect; DataCol: Integer; Column: TColumn; State: TGridDrawState); begin { if Query1.FieldByName('Col1').AsString <> '' then if (gdSelected in State) and (DBGrid1.Focused = True) then DBGrid1.Canvas.Font.Color := clWhite else DBGrid1.Canvas.Font.Color := clTeal; } if query1.FieldByName('Col1').AsString <> '' then dbgrid1.Canvas.Brush.Color := $00E0FFFF else dbgrid1.Canvas.Brush.Color := clWhite; if gdSelected in State then begin dbgrid1.Canvas.Brush.Color := clNavy; dbgrid1.Canvas.Font.Color := clWhite; end; dbgrid1.DefaultDrawColumnCell(Rect, DataCol, Column, State); end;
ACanvas: TCanvas; ARect: TRect; ANode: TdxTreeListNode;
AColumn: TdxTreeListColumn; ASelected, AFocused, ANewItemRow: Boolean;
var AText: string; var AColor: TColor; AFont: TFont;
var AAlignment: TAlignment; var ADone: Boolean);
begin
if cdsDetail.FieldByName('GoodsPrice').AsFloat = 0 then
AColor := clGradientActiveCaption;
if AColumn.ColIndex in [3,7] then
AColor := clWhite;
end;
procedure TfrmModifyPrice.dxDBGrid1CustomDrawCell(Sender: TObject;
ACanvas: TCanvas; ARect: TRect; ANode: TdxTreeListNode;
AColumn: TdxTreeListColumn; ASelected, AFocused, ANewItemRow: Boolean;
var AText: string; var AColor: TColor; AFont: TFont;
var AAlignment: TAlignment; var ADone: Boolean);
begin
end;
根据一定地条件来画!
to arvid_gs(west) 拿出实例来.
to lwk_hlj(披着狼皮的人) 是否少点东西.
procedure TForm1.DBGridDrawColumnCell(Sender: TObject;
const Rect: TRect; DataCol: Integer; Column: TColumn;
State: TGridDrawState);
begin
{
if Query1.FieldByName('Col1').AsString <> '' then
if (gdSelected in State) and (DBGrid1.Focused = True) then
DBGrid1.Canvas.Font.Color := clWhite
else
DBGrid1.Canvas.Font.Color := clTeal;
}
if query1.FieldByName('Col1').AsString <> '' then
dbgrid1.Canvas.Brush.Color := $00E0FFFF
else
dbgrid1.Canvas.Brush.Color := clWhite; if gdSelected in State then
begin
dbgrid1.Canvas.Brush.Color := clNavy;
dbgrid1.Canvas.Font.Color := clWhite;
end; dbgrid1.DefaultDrawColumnCell(Rect, DataCol, Column, State);
end;