隔行改變DBGrid網格顏色

2021-04-06 15:11:28 字數 1086 閱讀 9026

delphi5 - 隔行改變dbgrid網格顏色 

在 form1 上放置 dbgrid1、query1、datasource1 三個資料庫元件,設定相關的屬性,使 dbgrid1 能顯示表中的資料。然後,在 dbgrid1 的 ondrawcolumncell 事件中鍵入以下**,然後執行程式

**:procedure tform1.dbgrid1drawcolumncell(sender: tobject; const rect: trect;

datacol: integer; column: tcolumn; state: tgriddrawstate);

var i:integer;

begin

if gdselected in state then exit;  //隔行改變網格背景色: 

if adoquery1.recno mod 2 = 0 then

(sender as tdbgrid).canvas.brush.color := clinfobk //定義背景顏色

else

(sender as tdbgrid).canvas.brush.color := rgb(191, 255, 223);  //定義背景顏色

//定義網格線的顏色:

dbgrid1.defaultdrawcolumncell(rect,datacol,column,state);

with (sender as tdbgrid).canvas do //畫 cell 的邊框

begin

pen.color := $00ff0000; //定義畫筆顏色(藍色)

moveto(rect.left, rect.bottom); //畫筆定位

lineto(rect.right, rect.bottom); //畫藍色的橫線

pen.color := clbtnface; //定義畫筆顏色(蘭色)

moveto(rect.right, rect.top); //畫筆定位

lineto(rect.right, rect.bottom); //畫綠色

end;

end;

用bde中的table1未能通過,顏色沒有隔行變化。

DBGrid的分類顏色顯示

這兩天在csdn裡轉轉,發現很多人問關於dbgrid或dbgrideh的分類顯示的問題,今天閒下來,就這個問題聊兩句。實際上對於dbgrid的自畫,delphi 提供了兩個事件供我們使用,乙個是畫行的 ondrawdatacell sender tobject const rect trect fi...

如何讓Jtable隔行分別顏色顯示

方法一 class mytablecellrenderer extends defaulttablecellrenderer else return this 方法二class myrenderer extends jlabel implements tablecellrenderer public...

請問,怎麼在DBGRID中改變CELL內容

請問,怎麼在dbgrid中改變cell內容 delphi windows sdk api 我寫了以下 但是還是顯示數字 procedure tmaketicket.dbgrideh3drawcolumncell sender tobject const rect trect datacol inte...