m_smith Ответов: 0

Как изменить цвет ячейки jtable при щелчке мыши?


Привет ребята,

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

<pre>private void jTableMouseReleased(java.awt.event.MouseEvent evt) {                                     
        int row = jTable.rowAtPoint(evt.getPoint());
        int col = jTable.columnAtPoint(evt.getPoint());
        if (row >= 0 && col >= 0) {

                Component c = jTable.getCellRenderer(row, col).getTableCellRendererComponent(jTable, null, false, true, row, col);
                if(c.getBackground() == Color.RED){
                    c.setBackground(Color.BLUE);
                }
                else{
                    c.setBackground(Color.RED);
                }
                
          
        }
    }         


Но он не работает для одной клетки, он постоянно меняет цвета многих клеток. Кроме того, если я нажму на одну и ту же ячейку несколько раз, ничего не произойдет.
Кто-нибудь может мне помочь, пожалуйста?

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

Что я уже пробовал:

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

0 Ответов