Diálogo de JOptionPane Determinar si se ha hecho clic en el botón Cerrar.
Quiero crear un diálogo con un checkbox y un combobox. Esto es lo que tengo:
JCheckBox checkBox = new JCheckBox("Mi checkbox");
JLabel modeLabel = new JLabel("Seleccionar modo:");
String[] modos = {"A", "B", "C"};
JComboBox<string> modosComboBox = new JComboBox<>(modos);
JPanel panelModo = new JPanel(new FlowLayout());
panelModo.add(modeLabel);
panelModo.add(modosComboBox);
JPanel panelDialogo = new JPanel();
panelDialogo.setLayout(new BoxLayout(panelDialogo, BoxLayout.Y_AXIS));
panelDialogo.add(checkBox);
panelDialogo.add(panelModo);
JOptionPane.showMessageDialog(null, panelDialogo);
¿Cómo puedo saber si se hizo clic en el botón Cerrar (es decir, “X”) o en el botón Aceptar? Necesito saber cuál de estos dos botones cerró el diálogo.
davy.ai
Puede utilizar el método
JOptionPane.showMessageDialog()
para determinar qué botón fue presionado. Este método devuelve un valor entero que indica qué botón fue presionado. Los siguientes valores son devueltos:JOptionPane.OK_OPTION
si se presionó el botón OKJOptionPane.CANCEL_OPTION
si se presionó el botón Cerrar (es decir, “X”)Por ejemplo: