1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35
|
private static class DataCellRenderer implements TableCellRenderer{
@Override
public Component getTableCellRendererComponent(JTable table,
Object value,
boolean isSelected,
boolean hasFocus,
int row,
int column) {
logger.info("("+column+";"+row+")");
logger.info("isSelected: "+isSelected);
logger.info("hasFocus: "+hasFocus);
final JTextField textField=new JTextField();
//On met la valeur dans la case
textField.setText(value.toString());
//Bordure noire sur la case sélectionnée
textField.setBorder(isSelected? BorderFactory.createLineBorder(Color.black,2) : null);
//Lorsque l'utilisateur sélectionne la case, on sélectionne tout le texte
textField.addFocusListener(new FocusListener() {
@Override
public void focusLost(FocusEvent e) {}
@Override
public void focusGained(FocusEvent e) {textField.selectAll();}
});
if(hasFocus){textField.selectAll();}
return textField;
}
} |
Partager