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;

  • 相关阅读:
    DataTable四个方法
    c++面向对象编程必备“良方”(转)
    函数调用约定
    AFX_IDW_PANE_FIRST(转)
    CString.Format的详细用法(转)
    ID的分配 (转)
    CString用法整理(转载)
    jquery之效果
    JS 水仙数
    CSS 文本换行
  • 原文地址:https://www.cnblogs.com/yoogoo/p/2457185.html
Copyright © 2011-2022 走看看