Foros del Web » Programación para mayores de 30 ;) » Java »

Problema con un combobox

Estas en el tema de Problema con un combobox en el foro de Java en Foros del Web. Comunidad, Tengo el siguiente problema: Tengo un combobox que me carga el ID de la tabla constructora al presionarlo, pero, si vuelvo a presionar más ...
  #1 (permalink)  
Antiguo 29/11/2011, 21:20
 
Fecha de Ingreso: septiembre-2011
Mensajes: 40
Antigüedad: 12 años, 7 meses
Puntos: 0
Pregunta Problema con un combobox

Comunidad, Tengo el siguiente problema:


Tengo un combobox que me carga el ID de la tabla constructora al presionarlo, pero, si vuelvo a presionar más de una vez, los items se me van repitiendo y repitiendo.


Acá el código:

private void cboBorrarConstructoraPopupMenuWillBecomeVisible(ja vax.swing.event.PopupMenuEvent evt) {


String driver = "oracle.jdbc.driver.OracleDriver";
String dsn = "jdbc:oracle:thin:@localhost:1521:XE";
String sql = "select id_constructora from constructora Order By 1 Asc";

String usuario = "tallerbd";
String password = "oracle";


try {

Class.forName(driver);
Connection con = DriverManager.getConnection(dsn, usuario, password);
java.sql.Statement stmt = con.createStatement(ResultSet.TYPE_SCROLL_INSENSIT IVE, ResultSet.CONCUR_READ_ONLY);

// PreparedStatement ps = con.prepareStatement(sql);
ResultSet rs = stmt.executeQuery (sql);

while (rs.next()==true) {
// modeloCombo.addElement(rs.getObject(1));
cboBorrarConstructora.addItem (rs.getObject(1));
}


rs.close();
} catch (SQLException ex) {
Logger.getLogger(Constructora.class.getName()).log (Level.SEVERE, null, ex);
} catch (ClassNotFoundException ex) {
Logger.getLogger(Constructora.class.getName()).log (Level.SEVERE, null, ex);

}
}

Ayúdenme con esto, porfa.
  #2 (permalink)  
Antiguo 30/11/2011, 04:02
Avatar de FiruzzZ  
Fecha de Ingreso: diciembre-2007
Ubicación: en casa
Mensajes: 470
Antigüedad: 16 años, 4 meses
Puntos: 41
Respuesta: Problema con un combobox

Porque solo estás agregando items:
cboBorrarConstructora.addItem (rs.getObject(1));
pero nunca estás borrando "lo que ya hay/tiene" antes de cargarlo nuevamente
__________________
BadProgrammerException!
  #3 (permalink)  
Antiguo 30/11/2011, 10:21
Avatar de Ronruby  
Fecha de Ingreso: julio-2008
Ubicación: 18°30'N, 69°59'W
Mensajes: 4.879
Antigüedad: 15 años, 9 meses
Puntos: 416
Respuesta: Problema con un combobox

Tienes que llamar al metodo removeAllItems() antes de comenzar a insertar Items en el JCombobox:
http://docs.oracle.com/javase/1.5.0/...moveAllItems()
  #4 (permalink)  
Antiguo 30/11/2011, 12:46
 
Fecha de Ingreso: septiembre-2011
Mensajes: 40
Antigüedad: 12 años, 7 meses
Puntos: 0
Respuesta: Problema con un combobox

No entiendo en qué parte debería poner el
cboBorrarConstructora.removeAllItems();
  #5 (permalink)  
Antiguo 30/11/2011, 13:23
Avatar de Ronruby  
Fecha de Ingreso: julio-2008
Ubicación: 18°30'N, 69°59'W
Mensajes: 4.879
Antigüedad: 15 años, 9 meses
Puntos: 416
Respuesta: Problema con un combobox

Justo antes del while()
  #6 (permalink)  
Antiguo 30/11/2011, 15:35
 
Fecha de Ingreso: septiembre-2011
Mensajes: 40
Antigüedad: 12 años, 7 meses
Puntos: 0
Respuesta: Problema con un combobox

Millón de gracias, masters!!!

Ahora sí que resulta.
  #7 (permalink)  
Antiguo 01/12/2011, 07:00
Avatar de FiruzzZ  
Fecha de Ingreso: diciembre-2007
Ubicación: en casa
Mensajes: 470
Antigüedad: 16 años, 4 meses
Puntos: 41
Respuesta: Problema con un combobox

era necesario que te digan el método que tenés que usar?, donde colocar el código?
Podrías pensar un poco vos también... (programador == personal lógica y pensante)
__________________
BadProgrammerException!
  #8 (permalink)  
Antiguo 01/12/2011, 11:59
 
Fecha de Ingreso: septiembre-2011
Mensajes: 40
Antigüedad: 12 años, 7 meses
Puntos: 0
De acuerdo Respuesta: Problema con un combobox

Comentarios mala onda y mala clase como el del tipito de arriba están de más. Para descargarte existen sitios como www.porlaputa.com

Problema resuelto y chao!!!

Gracias a los que aportaron.

Etiquetas: combobox, netbeans, oracle
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 20:03.