2,497
社区成员
发帖
与我相关
我的任务
分享
procedure TForm1.cxDBTreeList1CustomDrawCell(Sender: TObject;
ACanvas: TcxCanvas; AViewInfo: TcxTreeListEditCellViewInfo;
var ADone: Boolean);
begin
if ADOQuery1.FieldByName('DepCode').AsString='0001' then
Acanvas.SetBrushColor(clRed)
end;
procedure TForm1.cxDBTreeList1CustomDrawCell(Sender: TObject;
ACanvas: TcxCanvas; AViewInfo: TcxTreeListEditCellViewInfo;
var ADone: Boolean);
var
vColor : TColor;
begin
vColor := aCanvas.Brush.Color;//先记录原先的颜色
if ADOQuery1.FieldByName('DepCode').AsString='0001' then
Acanvas.SetBrushColor(clRed)
else
Acanvas.SetBrushColor(vColor);
end;
procedure TFrmMain.DBGridEquipmentDrawColumnCell(Sender: TObject;
const Rect: TRect; DataCol: Integer; Column: TColumn;
State: TGridDrawState);
begin
if gdSelected in State then Exit; //隔行改变网格背景色:
if FrmDm.ADMachine.FieldByName('Status').AsInteger = MACHINE_STATE_DRAFT then
(Sender as TDBGrid).Canvas.Brush.Color := clInfoBk//RGB(255, 201, 147) //定义背景颜色
else if FrmDm.ADMachine.FieldByName('Status').AsInteger = MACHINE_STATE_AUDITING then
(Sender as TDBGrid).Canvas.Brush.Color := RGB(151, 203, 255) //定义背景颜色
else if FrmDm.ADMachine.FieldByName('Status').AsInteger = MACHINE_STATE_AUDITED then
(Sender as TDBGrid).Canvas.Brush.Color := RGB(165, 220, 220) //定义背景颜色
else if FrmDm.ADMachine.FieldByName('Status').AsInteger = MACHINE_STATE_STANDBY then
(Sender as TDBGrid).Canvas.Brush.Color := RGB(154, 154, 78) //定义背景颜色
else if (FrmDm.ADMachine.FieldByName('Status').AsInteger = MACHINE_STATE_ENCAPSULATED)
or (FrmDm.ADMachine.FieldByName('Status').AsInteger = MACHINE_STATE_ABANDONED) then
(Sender as TDBGrid).Canvas.Brush.Color := clMedGray; //定义背景颜色