一区二区三区日韩精品-日韩经典一区二区三区-五月激情综合丁香婷婷-欧美精品中文字幕专区

分享

delphi DBGridEh 首列加序號(hào)

 獨(dú)孤求財(cái) 2012-03-20

delphi DBGridEh 首列加序號(hào)

時(shí)間:2011-5-26來(lái)源:yang 作者: peng點(diǎn)擊: 73次

Ehlib的DBGridEh首列加序號(hào)

必須有首列(建一個(gè))
dbgrideh-options-dgzndicator設(shè)置為false
dbgrideh.columns[0]-visual-color可以區(qū)分其他列的顏色

procedure TDBViewFrm.DBGridEh1DrawColumnCell(Sender: TObject; const Rect: TRect;
  DataCol: Integer; Column: TColumnEh; State: TGridDrawState);
begin
  if Column.Index = 0 then
    if DBGridEh1.SumList.RecNo <> -1 then
      DBGridEh1.Canvas.TextRect(Rect, Rect.Left + 3, Rect.Top + 2,
        IntToStr(DBGridEh1.SumList.RecNo));
end;


************************************************
procedure TDBViewFrm.DBGridEh1TitleClick(Column: TColumnEh);
  //對(duì)dbgrid點(diǎn)擊標(biāo)題欄排序
var
  i: Integer;
begin
  if ADOQuery1.Active = True then
    begin
      for i := 1 to DBGridEh1.Columns.Count do
      begin
        //恢復(fù)所有標(biāo)題字體為默認(rèn)
        DBGridEh1.Columns[i - 1].Title.Font.Color := clWindowText;
        DBGridEh1.Columns[i - 1].Title.Font.Style := [];
      end;
      if (Column.Index <> 0) and (Column.Index <> 9) then //去掉不需要排序或不能排序的列。
      begin
        if ADOQuery1.Sort <> (Column.FieldName + ‘ ASC‘) then //判斷原排序方式
        begin
          ADOQuery1.Sort:= Column.FieldName + ‘ ASC‘;
          Column.Title.Font.Color := clRed;
          //改變標(biāo)題行字體為紅色,表示當(dāng)前的排序方式為升序
          Column.Title.Font.Style := [fsBold];
        end
        else
        begin
          ADOQuery1.Sort:= Column.FieldName + ‘ DESC‘;
          Column.Title.Font.Color := clBlue;
          //改變標(biāo)題行字體為紅色,表示當(dāng)前的排序方式為降序
          Column.Title.Font.Style := [fsBold];
        end;
      end;
    end;
end;


*********************************************************************

DBGridEh中分行分列、單元格的顏色設(shè)置

(1)分行不同顏色設(shè)置;在DBGridEh1DrawColumnCell中寫;

     if ADOQuery1.RecNo mod 2=0 then
     begin
         DBGridEh1.Canvas.Font.Color := clRed;
         DBGridEh1.DefaultDrawColumnCell(Rect, DataCol, Column, State);
     end
     else begin
         DBGridEh1.Canvas.Font.Color := clGreen;
         DBGridEh1.DefaultDrawColumnCell(Rect, DataCol, Column, State);
     end;

(2)分行不同背景顏色設(shè)置;在DBGridEh1DrawColumnCell中寫;

     if ADOQuery1.RecNo mod 2=0 then
     begin
         DBGridEh1.Canvas.Brush.Color := clRed;
         DBGridEh1.DefaultDrawColumnCell(Rect, DataCol, Column, State);
     end
     else begin
         DBGridEh1.Canvas.Brush.Color := clGreen;
         DBGridEh1.DefaultDrawColumnCell(Rect, DataCol, Column, State);
     end;

(3)符合條件的單元格顏色或者背景顏色設(shè)置;在DBGridEh1DrawColumnCell中寫;

     if Column.FieldName=‘價(jià)格‘ then
     begin
         if ADOQuery1.FieldByName(‘價(jià)格‘).AsFloat<0 then
         begin
             DBGridEh1.Canvas.Font.Color := clRed;
             DBGridEh1.DefaultDrawColumnCell(Rect, DataCol, Column, State);
         end;
     end;


(4)交叉設(shè)置列顏色
         1、為DBGridEh的每列的Color屬性設(shè)置值。
         2、將DBGridEh的RowColorFlag設(shè)為false;

注:DBGridEh1.DefaultDrawColumnCell(Rect, DataCol, Column, State);
  Rect:代表在畫布中cell的位置位置所在,也就是你要對(duì)哪個(gè)區(qū)域進(jìn)行重畫;  
  DataCol:代表columns數(shù)組中column的標(biāo)號(hào)  
  Column:描述cell的顯示屬性和對(duì)應(yīng)的字段屬性的tcolumn對(duì)象  
  State:描述cell是否有輸入焦點(diǎn)、是否被選中、是否處于鎖定模式(如同column   header)
*******************************************************************
 (5)設(shè)置格線顏色
procedure Tfm1.FormCreate(Sender: TObject);
begin
    dbgrideh2.FixedColor:=clWhite;
    dbgrideh2.GridLineColors.DarkColor:=clRed;
    dbgrideh2.GridLineColors.BrightColor:=clRed;
    dbgrideh2.Flat:=true;
    dbgrideh2.Ctl3D:=false; //這樣就可以設(shè)置邊框顏色
    dbgrideh2.Options:=dbgrideh2.Options+[dgRowSelect];
end;
*******************************************************************
 (5)多行選擇復(fù)制
  procedure  Tfm1.btnCopyClick(Sender:TObject);  
  var
          i:integer;  
          booklist:TBookmarklist;  
          bookstr:Tbookmarkstr;  
  begin  
        bookstr:=Table1.bookmark;  
        try  
              booklist:=dbgrideh2.SelectedRows;  
              for   i:=0   to   booklist.count-1   do  
              begin  
                    Table1.bookmark:=booklist[i];  
                    Memo1.lines.add(Table1.fieldbyname(‘字段1‘).asstring);
                    Memo1.lines.add(Table1.fieldbyname(‘字段2‘).asstring);    
              end;  
        finally  
              Table1:=bookstr;  
        end;  
  end;    

    本站是提供個(gè)人知識(shí)管理的網(wǎng)絡(luò)存儲(chǔ)空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點(diǎn)。請(qǐng)注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購(gòu)買等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)點(diǎn)擊一鍵舉報(bào)。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評(píng)論

    發(fā)表

    請(qǐng)遵守用戶 評(píng)論公約

    類似文章 更多

    欧美大胆女人的大胆人体| 日本熟妇五十一区二区三区| 国产精品不卡一区二区三区四区 | 日韩精品一区二区三区射精| 蜜桃av人妻精品一区二区三区| 爱在午夜降临前在线观看| 国产精品自拍杆香蕉视频| 国产亚州欧美一区二区| 亚洲av秘片一区二区三区| 久久福利视频在线观看| 激情亚洲一区国产精品久久| 久久久精品日韩欧美丰满| 欧美色欧美亚洲日在线| 日韩成人午夜福利免费视频| 久久精品色妇熟妇丰满人妻91| 国产中文字幕久久黄色片| 国产级别精品一区二区视频| 中文字幕av诱惑一区二区| 日本午夜精品视频在线观看| 国产伦精品一区二区三区精品视频| 日韩精品少妇人妻一区二区| 美女激情免费在线观看| 好吊日在线观看免费视频| 91国自产精品中文字幕亚洲| 好吊视频有精品永久免费| 国产免费一区二区三区av大片 | 成人国产一区二区三区精品麻豆| 少妇福利视频一区二区| 亚洲一区二区精品国产av| 办公室丝袜高跟秘书国产| 99久久国产精品成人观看| 大香蕉伊人一区二区三区 | 中国少妇精品偷拍视频| 精品精品国产欧美在线| 日韩在线免费看中文字幕| 久久机热频这里只精品| 中文字幕日韩欧美亚洲午夜| 久久精品免费视看国产成人| 老司机激情五月天在线不卡| 日本精品啪啪一区二区三区| 日韩精品一区二区亚洲|