JTable設定表頭背景色

2021-08-10 06:17:49 字數 2628 閱讀 8954

今天發現乙個新問題:當設定表頭的背景色的時候,顏色沒有完全填充到表頭當中,如下圖所示:

**:

table.gettableheader().setbackground(new color(51, 102, 255));
該**的效果如上所示。

想要的效果是:

首先設定表頭的高度:

dimension size = table.gettableheader().getpreferredsize();

size.height = 32

;//設定新的表頭高度32

table.gettableheader().setpreferredsize(size);

設定**表頭背景色和表頭內容居中:

/**

* *@param table

* **

*@param columnindex

* 要設定的列下標

*@param c

* 顏色

*/public

static

void

settableheadercolor(jtable table, int columnindex, color c)

};cellrenderer.setbackground(c);

column.setheaderrenderer(cellrenderer);

}

最終的效果:

完整**:

/**

* 設計**的樣式類

*@author

* */

public

class

tablestyleui else

sethorizontalalignment(jlabel.center);// **內容居中

((defaulttablecellrenderer) table.gettableheader().getdefaultrenderer())

.sethorizontalalignment(defaulttablecellrenderer.center);// 列頭內容居中

table.gettableheader().setfont(new font("微軟雅黑", font.plain, 13));

table.gettableheader().setresizingallowed(true);

table.setrowheight(26);//設定行高

return

super.gettablecellrenderercomponent(table, value,

isselected, hasfocus, row, column);}};

dimension size = table.gettableheader().getpreferredsize();

size.height = 32;//設定新的表頭高度32

table.gettableheader().setpreferredsize(size);

for (int i = 0; i < table.getcolumncount(); i++)

tablestyleui.settableheadercolor(table,0,color.red);//把表頭的第1列設為紅色

tablestyleui.settableheadercolor(table,1,color.yellow);//把表頭的第2列設為黃色

tablestyleui.settableheadercolor(table,2,color.green);//把表頭的第3列設為綠色

tablestyleui.settableheadercolor(table,3,color.orange);//把表頭的第4列設為橙色

}/**

* 該方法主要實現了**中表頭的背景色的設計,表頭內容的居中效果

* *@param table

* **

*@param columnindex

* 要設定的列下標

*@param c

* 顏色

*/public

static

void

settableheadercolor(jtable table, int columnindex, color c)

};cellrenderer.setbackground(c);

column.setheaderrenderer(cellrenderer);}}

Android Studio 設定背景色

原文 android.eoe.cn topic android studio 對於我們長期使用電腦程式設計的人來說,白色很刺激我們的眼睛,所以我經常會改變workspace的背景色,使眼睛舒服一些。選擇settings 選擇colors fonts 選擇darcula 黑色 default 白色 背...

swing 設定背景色

無法直接設定背景色,swing的結構為 根面板 層級面板 玻璃面板 內容面板 一般我們只操作內容面板。所以我們背景色也應該設定為內容的背景色 jframe.add 等價於jframe.getcontentpane add 也就是所有的元件最後都是新增到內容面板。frm.getcontentpane ...

MFC 設定視窗背景色

若要改變cview,cframewnd或cwnd物件的背景顏色需要處理wm erasebkgnd訊息 wm erasebkgnd true表示已處理背景重新整理 false表示需要在onpaint裡處理 示例 bool cimgview onerasebkgnd cdc pdc q oneraseb...