麻豆小视频在线观看_中文黄色一级片_久久久成人精品_成片免费观看视频大全_午夜精品久久久久久久99热浪潮_成人一区二区三区四区

首頁 > 編程 > Delphi > 正文

為Delphi數據表格增加色彩

2019-09-08 23:08:56
字體:
來源:轉載
供稿:網友
                                                                                                                                                       
                       在DELPHI中經常用到網格控件(DBGrid)顯示數據,網格控件只提供了每一行的顏色屬性,但在實際應用中我們經常希望它按某一行某一項的取值不同顯示不同的顏色,甚至在網格中的單位表格項中顯示出圖像等等,下面我們以一個簡單的例子來告訴大家怎么做。

  比如我們要求如果春季有退書用紅色表示,如果秋季有退書用黃色表示(圖1)

  

  圖1

  利用DBGrid自繪功能可以很容易地實現這樣的要求。用戶可以處理DBGrid的OnDrawColumnCell事件,在其中實現特殊的效果。要判斷記錄是否滿足要求,可以使用DBGrid的DataLink屬性獲得數據,但DBGrid的DataLink屬性屬于保護成員,必須在TCustomDBGrid的子類中調用。

type TMyCustomDBGrid = class(TCustomDBGrid); procedure TForm1.DBGrid1DrawColumnCell(Sender: TObject; const Rect: TRect; DataCol: Integer; Column: TColumn; State: TGridDrawState); varsCjts,sQjTs:String;begin    with TMyCustomerDBGrid(Sender) do       begin       Cjts:=DataLink.Fields[5].AsString;       sQjts:=DataLink.Fields[9].AsString;       if sCjts<>''''  then       //春季退書數量>0的用紅色顯示            Canvas.Brush.Color := clRed       else          if sQjts<>''''  then      //秋季退書數量>0的用黃色顯示       Canvas.Brush.Color := clYellow          else             Canvas.Brush.Color:=clWhite;      Canvas.Font.Color:=clBlack;            canvas.fillrect(rect);      canvas.textout(rect.left+4,rect.top+4,Column.Field.AsString);      end;end;


  由此方法可以延伸出其它控件的多種修飾方法,比如可以按數據項值采用不同的顏色,可以按記錄號顯示不同的顏色??傊?,靈活應用canvas、rect及bitmap等對象,可以將各種網格裝飾得絢麗多彩。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表

圖片精選

主站蜘蛛池模板: av电影在线网站 | 懂色av懂色aⅴ精彩av | 日韩黄站 | 午夜视频在线免费播放 | 97久久人人超碰caoprom | 一本色道久久综合亚洲精品小说 | 免费国产人成网站 | 日韩精品dvd | 精品国产一区二区三区四区在线 | 精品中文视频 | 一级黄色国产视频 | 国产永久免费观看 | 男人的天堂色偷偷 | 亚洲第一成人在线观看 | 欧美一级毛片免费观看视频 | 超碰一区 | 黄色片免费看看 | 免费亚洲视频在线观看 | 亚洲最黄视频 | 男人久久天堂 | av观看网站| 亚洲成年人免费网站 | 在线观看免费污视频 | 日韩中文字幕一区二区三区 | www.99av | 日日草夜夜操 | 久久欧美亚洲另类专区91大神 | 一级毛片免费高清视频 | 日日鲁夜夜视频热线播放 | 欧美激情性色生活片在线观看 | 国产精品视频yy9299一区 | 全黄性性激高免费视频 | 免费在线观看成人网 | 毛片视频免费观看 | 精品久久久久99 | 在线a毛片| 欧美人与zoxxxx另类9 | 亚洲成人精品久久 | 国产免费视频在线 | 一区二区三区欧美日韩 | 中文字幕在线看第二 |