Ayuda con Jcombobox

Iniciado por reeyesg, 11 Junio 2015, 02:37 AM

0 Miembros y 2 Visitantes están viendo este tema.

reeyesg

Bnas mi gente, aqui vengo cn unas dudas muy graandes para mi no se para uds, espero me las aclaren

con el jcombobox quisiera abrir una ventana dependiente de la opcion que tome, ya q solo e visto por ahi con el boton.

tambien necesito saber como hacer un calculo por medio de la misma ejemplo

ingresar un numero y en dos jcombobox elegir por ejemplo;

numero: 5 jcombobox:metros a jcombobox:kilometros

jtexfield= resultado de la operacion.. quisiera un ejemplo practico porfa necesito esa ayuda : :-[ :-[

Usuario Invitado

#1
Abrir una ventana de diálogo a través de JComboBox:

Código (java) [Seleccionar]
private YourClass that = this;

cboOrigin.addItemListener(new ItemListener(){
@Override
public void itemStateChanged(ItemEvent evt) {
if(evt.getStateChanged() == ItemEvent.SELECTED) {
String selected = String.valueOf(evt.getSelectedItem());
if(selected.equals("Centímetros a Metros")) {
// that = this. Será el padre de éste dialogo.
// Se bloqueará el frame hasta que se cierre el dialog
new CentimetersToMetersDialog(that);
}
}
}
});

public class CentimetersToMetersDialog extends JDialog {
/* ... */
}


Conversión:

Código (java) [Seleccionar]

private String origin;
private String target;

cboOrigin.addItemListener(new ItemListener(){
@Override
public void itemStateChanged(ItemEvent evt) {
if(evt.getStateChanged() == ItemEvent.SELECTED) {
origin = String.valueOf(evt.getSelectedItem());
cboTarget.setDisabled(false);
} else {
cboTarget.setDisabled(true);
}
}
});

cboTarget.addItemListener(new ItemListener(){
@Override
public void itemStateChanged(ItemEvent evt) {
if(evt.getStateChanged() == ItemEvent.SELECTED) {
target = String.valueOf(evt.getSelectedItem());
btnConvert.setDisabled(false);
} else {
btnConvert.setDisabled(true);
}
}
});

btnConvert.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent evt) {
String fully = (origin + " " + target).toLowerCase();
Double toConvert = Double.parseDouble(txtNumber.getText());
                Double converted = 0.0d;
Converter converter = new Converter();

if(fully.contains("centimetros") && fully.contains("metros")) {
converted = converter.centimetersToMeters(toConvert);
}
if(fully.contains("centimetros") && fully.contains("pulgadas")) {
converted = converter.centimetersToInch(toConvert);
}
/* otras conversiones */
                txtResult.setText(converted);
}
});
"La vida es muy peligrosa. No por las personas que hacen el mal, si no por las que se sientan a ver lo que pasa." Albert Einstein

reeyesg

Gracias Gus, pero ese code es para native awt, y yo ando haciendo eso cn swing; pero gracias de todas formas ya solicionee  :-* :-* :-*

para el de los Frames cree una clase, y luego en el jcombobox puse como popup invisible y la clase y me funciono al pelo, y para lo de las conversiones le meti 1switch para cada cmbo y me funciona al pelo, gracias por tu ayuda :$

Usuario Invitado

El código es Swing, ¿de donde sacas que estoy usando AWT? Lo que es AWT son los eventos como es normal.
"La vida es muy peligrosa. No por las personas que hacen el mal, si no por las que se sientan a ver lo que pasa." Albert Einstein