AYUDA JCOMBOBOX
Hola Foristas,
Tengo un programa desarrollado en jDeveloper 11g.
Tengo una pantalla en donde se registran los productos y en donde tengo dos jComboBox para seleccionar familia y sub-familia.
Al cargar el formulario, solo carga el combo de la familia y al seleccionar este, recien cargue el combo de la sub-familia, hasta ahi todo bien.
Para el formulario, uso el evento "this_windowOpened", para cargar el combo familia.
Y para el combo familia, uso los siguientes eventos:
private void cmbFamilia_keyPressed(KeyEvent e) {
if (e.getKeyCode() == KeyEvent.VK_ENTER) {
cmbSubFamilia.requestFocus();
}
}
private void cmbFamilia_focusLost(FocusEvent e) {
try{
vCoFamilia = ATLoadComboBoxValues.getCVLCode("familia", cmbFamilia.getSelectedIndex());
ATLoadComboBoxValues.loadComboBoxValues(cmbSubFamilia, DataManipulation.SubFamilia(), "subfamilia", true);
}
catch(Exception exception){
...
}
}
Lo que deseo es: Cuando deseo cambiar nuevamente con el mouse el item de la familia, deberia cambiar automaticamente el combo de la subfamilia, sin que en este ultimo, se este agregando items duplicados o que no pertenezcan a la familia...
Que estoy haciendo mal o que eventos me estan faltando utilizar ?
Espero haberme explicado bien, si puedieran enviarme el codigo y los eventos a usar, estaria muy agradecido.
Tengo un programa desarrollado en jDeveloper 11g.
Tengo una pantalla en donde se registran los productos y en donde tengo dos jComboBox para seleccionar familia y sub-familia.
Al cargar el formulario, solo carga el combo de la familia y al seleccionar este, recien cargue el combo de la sub-familia, hasta ahi todo bien.
Para el formulario, uso el evento "this_windowOpened", para cargar el combo familia.
Y para el combo familia, uso los siguientes eventos:
private void cmbFamilia_keyPressed(KeyEvent e) {
if (e.getKeyCode() == KeyEvent.VK_ENTER) {
cmbSubFamilia.requestFocus();
}
}
private void cmbFamilia_focusLost(FocusEvent e) {
try{
vCoFamilia = ATLoadComboBoxValues.getCVLCode("familia", cmbFamilia.getSelectedIndex());
ATLoadComboBoxValues.loadComboBoxValues(cmbSubFamilia, DataManipulation.SubFamilia(), "subfamilia", true);
}
catch(Exception exception){
...
}
}
Lo que deseo es: Cuando deseo cambiar nuevamente con el mouse el item de la familia, deberia cambiar automaticamente el combo de la subfamilia, sin que en este ultimo, se este agregando items duplicados o que no pertenezcan a la familia...
Que estoy haciendo mal o que eventos me estan faltando utilizar ?
Espero haberme explicado bien, si puedieran enviarme el codigo y los eventos a usar, estaria muy agradecido.
Lo que tienes que hacer es en el evento mouseClick del comboFamilia:
//primero eliminar los elementos que ya hubiera en el combo de las subfamilias
comboSubFamilia.removeAllItems();
//ahora, cargar todas las subfamilias en el combo de subfamilias. Si las tienes en un List (listaSubfamilias) podrias hacerlo asi o con la clase Iterator.
for(int i=0;i
//primero eliminar los elementos que ya hubiera en el combo de las subfamilias
comboSubFamilia.removeAllItems();
//ahora, cargar todas las subfamilias en el combo de subfamilias. Si las tienes en un List (listaSubfamilias) podrias hacerlo asi o con la clase Iterator.
for(int i=0;i