private void btnGuardarActionPerformed(
     java.awt.event.ActionEvent evt) { // GEN-FIRST:event_btnGuardarActionPerformed
   String nombre = this.txtNombre.getText().trim();
   ges = new GestorLocalidad();
   Localidad l = new Localidad();
   l.setNombre(txtNombre.getText());
   l.setProvincia((Provincia) cmbProvincia.getSelectedItem());
   if (ges.validarNombre(nombre)) {
     boolean ban = ges.grabar(l);
     if (ban) {
       JOptionPane.showMessageDialog(
           null,
           "La localidad se ha grabado con éxito",
           "Localidad",
           JOptionPane.INFORMATION_MESSAGE);
       limpiarCampos();
       DefaultTableModel modelo = (DefaultTableModel) tblLocalidades.getModel();
       modelo.setNumRows(0);
       llenarTabla();
     } else {
       JOptionPane.showMessageDialog(
           null,
           "La localidad NO se ha grabado con éxito \n Inténtelo nuevamente",
           "Localidad",
           JOptionPane.OK_OPTION);
     }
   } else {
     JOptionPane.showMessageDialog(
         null,
         "Está intentando grabar una localidad cuyo nombre ya existe \n Inténtelo nuevamente",
         "Localidad",
         JOptionPane.OK_OPTION);
   }
 } // GEN-LAST:event_btnGuardarActionPerformed
  public void llenarTabla() {
    ges = new GestorLocalidad();
    ArrayList lista = ges.obtenerTodos();
    Iterator iterador = lista.iterator();
    DefaultTableModel modelo = (DefaultTableModel) tblLocalidades.getModel();

    while (iterador.hasNext()) {
      Localidad l = (Localidad) iterador.next();
      // Pais p=new Pais(l.getProvincia().);
      Object[] o = {l, l.getProvincia(), l.getProvincia().getPais()};
      modelo.addRow(o);
    }
    tblLocalidades.setModel(modelo);

    TableColumn columnaDetalle;
    columnaDetalle = tblLocalidades.getColumnModel().getColumn(tblLocalidades.getColumnCount() - 3);
    tblLocalidades.getColumnModel().getColumn(tblLocalidades.getColumnCount() - 3).setMaxWidth(50);
    columnaDetalle.setCellEditor(new myeditor(tblLocalidades, btnDetalle));
    columnaDetalle.setCellRenderer(new myrenderer(true, btnDetalle));

    TableColumn columnaModificar;
    columnaModificar =
        tblLocalidades.getColumnModel().getColumn(tblLocalidades.getColumnCount() - 2);
    tblLocalidades.getColumnModel().getColumn(tblLocalidades.getColumnCount() - 2).setMaxWidth(50);
    columnaModificar.setCellEditor(new myeditor(tblLocalidades, btnModificar));
    columnaModificar.setCellRenderer(new myrenderer(true, btnModificar));

    TableColumn columnaEliminar;
    columnaEliminar =
        tblLocalidades.getColumnModel().getColumn(tblLocalidades.getColumnCount() - 1);
    tblLocalidades.getColumnModel().getColumn(tblLocalidades.getColumnCount() - 1).setMaxWidth(50);
    columnaEliminar.setCellEditor(new myeditor(tblLocalidades, btnEliminar));
    columnaEliminar.setCellRenderer(new myrenderer(true, btnEliminar));
  }
 private void cargarComboProvincia(int idPais) {
   ges.cargarProvincias(cmbProvincia, idPais);
 }
 private void cargarComboPais() {
   ges.cargarPaises(cmbPais);
 }