相关疑难解决方法(0)

Java JTable改变单元格颜色

我想制作一个可编辑的表,然后检查数据以确保其有效.我不知道如何改变一个细胞的颜色.我想获得一个单元格,例如(0,0)并将前景颜色设置为红色.我已经阅读了SO以及Oracle关于自定义ColorRenderer的其他帖子,但我只是不知道如何使用它.

谢谢.

java swing jtable colors

11
推荐指数
1
解决办法
7万
查看次数

在JTable中更改一个单元格的背景颜色

可能重复:
更改Swing JTable单元格颜色

我开发了一个显示JTable的swing应用程序.我希望当用户修改单元格值时,单元格修改了更改颜色.

这是我在用户修改单元格时运行的代码:

this.myTable.getColumnModel().getColumn(column).setCellRenderer(new StatusColumnCellRenderer()); 
Run Code Online (Sandbox Code Playgroud)

这是我的单元格Render类的代码:

public class StatusColumnCellRenderer extends DefaultTableCellRenderer {

    @Override
    public Component getTableCellRendererComponent(JTable table, Object value, boolean isSelected, boolean hasFocus, int row, int col) {

        //Cells are by default rendered as a JLabel.
        JLabel l = (JLabel) super.getTableCellRendererComponent(table, value, isSelected, hasFocus, row, col);

        //Get the status for the current row.
        TableModelLotti tableModel = (TableModelLotti) table.getModel();

        if(isSelected)
            l.setBackground(Color.GREEN);

        //Return the JLabel which renders the cell.
        return l;
    }
}
Run Code Online (Sandbox Code Playgroud)

java swing jtable tablecellrenderer

1
推荐指数
1
解决办法
4万
查看次数

如何给jtable单元格提供不同的背景颜色

我只获得了最后一行彩色..

class CustomTableCellRenderer extends DefaultTableCellRenderer {

    private Map<Integer, Color> mapColors;

    public CustomTableCellRenderer() {
        mapColors = new HashMap<>();
    }

    public void setRowColor(int row, Color color) {
//        System.out.println(row + "...happy...." + color);
        mapColors.put(row, color);

    }

    @Override
    public Component getTableCellRendererComponent(JTable table, Object obj, boolean isSelected, boolean hasFocus, int row, int column) {
        Component cell = super.getTableCellRendererComponent(table, obj, isSelected, hasFocus, row, 1);
        Color color = mapColors.get(row);
        if (color != null) {
            cell.setBackground(color);
        } else {
            cell.setBackground(isSelected ? table.getSelectionBackground() : table.getBackground());
        }
        row++;
        return …
Run Code Online (Sandbox Code Playgroud)

java swing colors hashmap tablecellrenderer

1
推荐指数
1
解决办法
1361
查看次数

标签 统计

java ×3

swing ×3

colors ×2

jtable ×2

tablecellrenderer ×2

hashmap ×1