Cambiar de columna después de editar JTable
Publicado por Johan Donado B. (10 intervenciones) el 04/05/2012 06:35:22
saludos a todos.
Ayuda por favor. Tengo un JTable y quiero que cuando estemos editando una celda, al presionar ENTER para finalizar la edición, el cursor pase a la siguiente columna.
Probé con el siguiente código y funciona, pero entonces el Cuadro de Texto donde se editan las celdas sale pequeño, es decir que no se ajusta a las dimensiones de la celda que se está editando:
DefaultCellEditor de = new DefaultCellEditor(new JTextField());
de.addCellEditorListener(new CellEditorListener() {
@Override
public void editingStopped(ChangeEvent e) {
int row = oGrid.getSelectedRow();
int col = oGrid.getSelectedColumn();
if (col<oGrid.getColumnCount()-1){
oGrid.setColumnSelectionInterval(row, col+1);
}
}
@Override
public void editingCanceled(ChangeEvent e) {
}
});
oGrid.setDefaultEditor(Object.class, de);
Alguna idea??
Gracias.
Ayuda por favor. Tengo un JTable y quiero que cuando estemos editando una celda, al presionar ENTER para finalizar la edición, el cursor pase a la siguiente columna.
Probé con el siguiente código y funciona, pero entonces el Cuadro de Texto donde se editan las celdas sale pequeño, es decir que no se ajusta a las dimensiones de la celda que se está editando:
DefaultCellEditor de = new DefaultCellEditor(new JTextField());
de.addCellEditorListener(new CellEditorListener() {
@Override
public void editingStopped(ChangeEvent e) {
int row = oGrid.getSelectedRow();
int col = oGrid.getSelectedColumn();
if (col<oGrid.getColumnCount()-1){
oGrid.setColumnSelectionInterval(row, col+1);
}
}
@Override
public void editingCanceled(ChangeEvent e) {
}
});
oGrid.setDefaultEditor(Object.class, de);
Alguna idea??
Gracias.
Valora esta pregunta
0