guarda la mia classe di ButtonRenderer... che ho fatto per un progetto di "gestione campionato"
a parte quel peccatuccio nel costruttore(dove avrei divuto fare un metodo get ma x fretta ho preferito far così) poi funziona
codice:
import java.awt.*;
import javax.swing.*;
import javax.swing.table.*;
/**
* @version 1.0 11/09/98
*/
public class ButtonRenderer extends JButton implements TableCellRenderer {
/**
*
*/
private static final long serialVersionUID = 1L;
private boolean[] disp;
public ButtonRenderer(MyInternalFrame _frame) {
setOpaque(true);
disp=_frame.disputata;
}
public Component getTableCellRendererComponent(JTable table, Object value, boolean isSelected, boolean hasFocus, int row, int column) {
//System.out.println("Row:"+row+"\nColumn:"+ column);
//System.out.println();
if (isSelected) {
setForeground(table.getSelectionForeground());
setBackground(table.getSelectionBackground());
}
else{
setForeground(table.getForeground());
setBackground(UIManager.getColor("Button.background"));
}
if(disp[row]){
setText("Giocata");
this.setEnabled(false);
}
//setText( (value ==null) ? "" : value.toString() );
else {
setText("Calcola");
this.setEnabled(true);
}
return this;
}
}