zoukankan      html  css  js  c++  java
  • DBGrid 单双行显示不同颜色

    procedure TfrmMain.DBGrid1DrawColumnCell(Sender: TObject;
      const Rect: TRect; DataCol: Integer; Column: TColumn;
      State: TGridDrawState);
    var
      aIndex:Integer;
      aDBGrid:TDBGrid;
    begin
      if Sender is TDBGrid then
      begin
        aDBGrid:=TDBGrid(Sender);
        if State=[] then
        with aDBGrid do
        begin
          if Assigned(DataSource) and Assigned(DataSource.DataSet)
            and DataSource.DataSet.Active
            and not(SelectedRows.Find(DataSource.DataSet.Bookmark,aIndex)) then
          begin
            //aIndex:=(Rect.top div 17);//DataSource.DataSet.RecNo;
            try
              aIndex:=DataSource.DataSet.RecNo;
            Except
            end; 
            if odd(aIndex) then
              aDBGrid.Canvas.Brush.Color:=clWindow //白色
            else
              aDBGrid.Canvas.Brush.Color:=clBtnFace;//灰色
            aDBGrid.Canvas.Font.Color := clWindowText;
            TDBgrid(Sender).DefaultDrawColumnCell(Rect,DataCol,Column,State);
          end;
        end
        else
        if ( Sender <> Screen.ActiveControl ) then
        with aDBGrid.Canvas Do
        begin
          Brush.Color := clBtnFace;
          Font.Color := clWindowText;
          TDBgrid(Sender).DefaultDrawColumnCell(Rect,DataCol,Column,State);
        end;
      end;
    end;

  • 相关阅读:
    17-DBSCAN密度聚类
    16-K-means聚类
    15-TF-IDF
    14-支持向量机SVM
    13-感知机原理概述
    12-随机森林
    11-集成学习原理概述
    10-决策树
    9-朴素贝叶斯
    栈和队列(python)
  • 原文地址:https://www.cnblogs.com/yoogoo/p/2457185.html
Copyright © 2011-2022 走看看