//网格隔行颜色
procedure TLISTFORMDOC.DataGridCustomDraw(Sender: TObject; ACanvas: TCanvas; ARect: TRect; ANode: TTreeListNode; AColumn: TTreeListColumn; const AText: string; AFont: TFont; var AColor: Integer; ASelected, AFocused: Boolean; var ADone: Boolean);
begin
if not (ASelected or AFocused) and ((ANode.Index mod 2) = 1) then
AColor := $EAEAEA;
end;
根据计划工期和合同工期的值设置计划工期的显示颜色
procedure TLISTFORMDOC.DataGridCustomDrawCell(Sender: TObject; ACanvas: TCanvas; ARect: TRect; ANode: TTreeListNode; AColumn: TTreeListColumn; ASelected, AFocused, ANewItemRow: Boolean; var AText: string; var AColor: Integer; AFont: TFont; var AAlignment: TAlignment; var ADone: Boolean);
Var
i: Integer;
begin
for i := 0 to DataGrid.ColumnCount - 1 do
begin
if TDataGridColumn(AColumn).FieldName = 'FPLANPERIOD' then
begin
if TDataGridColumn(AColumn).ColumnDef.Field.DataSet.FieldByName('FPLANPERIOD').AsInteger >
TDataGridColumn(AColumn).ColumnDef.Field.DataSet.FieldByName('FCONTRACTPERIOD').AsInteger then
AFont.Color := Business.System.Graphics.clRed;
end;
end;
end;