我有一个JTable 5x5,我想编写一个程序setColorTable(JTable table,int Row,int Col),当调用Procedure setColorTable时,它将setBackground颜色为row和col in table。每个人都可以帮助我。
非常感谢你。
答案 0 :(得分:1)
您必须创建一个扩展Swing组件的自定义TableCellRenderer(如果您只想更改颜色,JLabel可能会满足您的需求),并实现TableCellRenderer接口。
答案 1 :(得分:1)
您可以通过扩展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);
}
}
最后通过;
获取TableCellRendererjTable1 = new javax.swing.JTable()
{
public TableCellRenderer getCellRenderer(int row, int column)
{
return new MyNewCellRenderer();
}
};
答案 2 :(得分:1)
如何在JTable中更改行的颜色
用于着色(Font
,前景,背景,e.i。)整行是prepareRenderer