настраиваемое средство визуализации ячеек для определенной строки и столбца

puuuuuuf, я начинаю любить качание :) Я пытаюсь написать cellRenderer для пользовательской визуализации всех ячеек, кроме тех, которые в первой строке и столбце. Поэтому я написал следующее:

public class CustomTableCellRenderer extends DefaultTableCellRenderer {
        public Component getTableCellRendererComponent(JTable table, Object obj, boolean isSelected, boolean hasFocus, int row, int column) {
            Component cell = super.getTableCellRendererComponent(table, obj, isSelected, hasFocus, row, column);

            if(row >0&&column>0){
                cell.setBackground(Color.GREEN);
            }

            return cell;
        }
    }

и установите средство визуализации следующим образом:

scheduleTable.setDefaultRenderer(Object.class, new CustomTableCellRenderer()); 

но по какой-то причине такой подход применяет рендерер ко всей ячейке. Так что все они зеленые. Если я делаю что-то не так, не могли бы вы помочь мне с этим, пожалуйста?

Заранее спасибо!

ADDITION
scheduleTable = new JTable() {
                    @Override
                    public Component prepareRenderer(TableCellRenderer renderer, int row, int column) {
                        Component comp = super.prepareRenderer(renderer, row, column);
                        int modelRow = convertRowIndexToModel(row);
                        int modelColumn = convertColumnIndexToModel(column);
                        if (modelColumn != 0 && modelRow != 0) {
                            comp.setBackground(Color.GREEN);
                        }
                        return comp;
                    }
                };  

этот код также делает всю таблицу зеленой.

Этот код:

scheduleTable = new JTable(tableModel) {
                    @Override
                    public Component prepareRenderer(TableCellRenderer renderer, int row, int column) {
                        Component comp = super.prepareRenderer(renderer, row, column);
                        int modelRow = convertRowIndexToModel(row);
                        int modelColumn = convertColumnIndexToModel(column);

                            if (modelRow != 0 && modelColumn != 0) {
                                setBackground(Color.GREEN);
                            } else {
                                setBackground(Color.WHITE);
                            }

                        return comp;
                    }
                };

дает мне следующий результат; (
enter image description here

Следующие ситуации у меня с разнымиn в выраженииrow != 0 && column != 0:
enter image description here

Ответы на вопрос(1)

Ваш ответ на вопрос