我有一個JTable 5x5,我想寫一個過程setColorTable(JTable table,int Row,int Col),當調用過程setColorTable時它將setBackground color爲表中的row和col 。每個人都可以幫助我。如何在JTable中改變行的顏色
非常感謝。
我有一個JTable 5x5,我想寫一個過程setColorTable(JTable table,int Row,int Col),當調用過程setColorTable時它將setBackground color爲表中的row和col 。每個人都可以幫助我。如何在JTable中改變行的顏色
非常感謝。
您可以通過擴展javax.swing.table.DefaultTableCellRenderer中寫自己的類,然後在此改變下面的方法,如你所願。
public class MyNewCellRenderer extends DefaultTableCellRenderer
{
@Override
public Component getTableCellRendererComponent(
JTable table, Object object,
boolean isSelected, boolean hasFocus,
int row, int column)
{
JLabel label = (JLabel) super.getTableCellRendererComponent(table, object, isSelected, hasFocus, row, column);
label.setBackground(Color.WHITE);
}
}
最後將TableCellRenderer置於;
jTable1 = new javax.swing.JTable()
{
public TableCellRenderer getCellRenderer(int row, int column)
{
return new MyNewCellRenderer();
}
};
基本上是正確的,只要注意:由於DefaultTableCellRenderer中的一個錯誤,這將不夠好 - 詳情參見[近期QA]( http://stackoverflow.com/q/9607670/203657) – kleopatra
如何改變行的顏色在JTable中
着色(Font
,Foregroung,Backgroung,EI)全行有prepareRenderer
請至少嘗試書面方式一些代碼,如果您仍然有問題,請發佈它。 – dngfng
查看a)在swing標籤wiki中引用的教程b)以f.i引用的舊版QA。在問題的邊欄c)做一些研究並嘗試你發現的東西...... – kleopatra