Как заполнить JTable последовательными номерами для первых n ячеек и изменить цвет для ячеек с номером - PullRequest
0 голосов
/ 06 апреля 2020

У меня был JTable, который составляет 10 строк и 10 столбцов. Я хочу заполнить последовательные числа от 1 до n, начиная с первой ячейки (r0 c0), (r0 c1), (r0 c2) ... (r1 c0), (r1 c1), (r1, c2) .. где г = строка, с = столбец. Пример следующим образом: Пример JTable

И замените ячейки, в которых есть номер, на какой-то цвет.

До сих пор я смог заполнить числа следующим код, но я не могу найти, чтобы изменить цвет просто для ячеек с номерами.

public class CellRender implements TableCellRenderer{

private TableCellRenderer RENDERER=new DefaultTableCellRenderer();
private int number;

public CellRender() {}

public CellRender(int n) {
    number=n;
}

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

    Component component=RENDERER.getTableCellRendererComponent(table, value, isSelected, hasFocus, row, column);

    int rowNum=number/10;   //# of row will be needed to fill all numbers 
    int colNum=10;          //# of column for the table
    int r=0;
    int c=0;
    int q=1;                //Fill table with number start with "1"
    while(q<=number) {
        if(r==rowNum) {
            //add row to the table
        }
        if(c==colNum) {
            c=0;            //Go to next row, column 0
            r++;
        }
        table.setValueAt(q, r, c);
        q++;
        c++;
    }
...