Mostrar valor a JComboBox de fila seleccionada en JTable
Trato de que me muestre el valor a mi jcombobox cuando selecciono una fila del Jtable, solo me muestra el del label ID y el del textfield. Y no me muestra el dato al jcombobox.
column=0;
fila = tblCiudad.getSelectedRow();
if (fila > -1){
lblID.setText(String.valueOf(tblCiudad.getValueAt(fila, column)));
txtCiudad.setText(String.valueOf(tblCiudad.getValueAt(fila, ++column)));
cbxPais.setSelectedItem(String.valueOf(tblCiudad.getModel().getValueAt(fila, ++column)));
}
}
Con esto lleno el JTable
String[] columNames = {"ID","Ciudad","Pais"};
tblCiudad.setModel(new DefaultTableModel());
try{
this.iniciarOperacion();
model = (DefaultTableModel) tblCiudad.getModel();
model.setColumnIdentifiers(columNames);
List<Ciudad> lst;
lst = sesion.getNamedQuery("TodoslasCiudades").list();
for(Ciudad c : lst){
String lista[] = {String.valueOf(c.getIdciudad()),c.getCiudad(), c.getPais().getPais()};
model.addRow(lista);
}
tblCiudad.setModel(model);
sesion.close();
}
catch (Exception e) {
System.out.println("Error " +e);
}
TableColumn columna = tblCiudad.getColumn("ID");
columna.setPreferredWidth(60);
columna.setMinWidth(40);
columna.setMaxWidth(60);
}
Aqui se abre la sesion
sesion = HibernateUtil.getSessionFactory().openSession();
tx = sesion.beginTransaction();
}
Manejo de error de la sesion
public void manejaException(HibernateException he) throws HibernateException{
tx.rollback();
throw new HibernateException("Ocurrio un error en la capa de acceso a datos. ", he);
}
Adjunto | Tamaño |
---|---|
imagen.png | 24.27 KB |
- Inicie sesión o regístrese para enviar comentarios
Ya lo solucione
column=0;
fila = tblCiudad.getSelectedRow();
if (fila > -1){
lblID.setText(String.valueOf(tblCiudad.getValueAt(fila, column)));
txtCiudad.setText(String.valueOf(tblCiudad.getValueAt(fila, ++column)));
cbxPais.setSelectedItem(String.valueOf(tblCiudad.getModel().getValueAt(fila, ++column))); <--- En esta parte me falto poner el getmodel
cbxPais.getModel().setSelectedItem(String.valueOf(tblCiudad.getModel().getValueAt(fila, ++column))); <--- Esta es la forma correcta
}
}