Estoy tratando de hacer que un evento se active siempre que se haga una elección de a JComboBox.
El problema que tengo es que no hay un addSelectionListener()método obvio .
He tratado de usar actionPerformed(), pero nunca se dispara.
A falta de anular el modelo para el JComboBox, estoy sin ideas.
¿Cómo me notifican un cambio de selección en un JComboBox**?
Editar: tengo que disculparme. Resulta que estaba usando una subclase de mal comportamiento JComboBox, pero dejaré la pregunta ya que su respuesta es buena.
                    
                        java
                                swing
                                jcombobox
                                itemlistener
                                
                    
                    
                        Allain Lalonde
fuente
                
                fuente

Respuestas:
Debería responder a ActionListeners , así:
@John Calsbeek señala acertadamente que
addItemListener()también funcionará. SinItemEventsembargo, puede obtener 2 , uno para la deselección del elemento seleccionado previamente y otro para la selección del nuevo elemento. ¡Simplemente no use ambos tipos de eventos!fuente
Código de ejemplo de
ItemListenerimplementaciónAhora solo obtendremos el artículo seleccionado.
Luego solo agrega oyente a tu JComboBox
fuente
Probaría el
itemStateChanged()método de laItemListenerinterfaz si la solución de jodonnell falla.fuente
Aquí está creando un ComboBox agregando un oyente para el cambio de selección de elementos:
fuente
Puedes probar estos
-o-
-o-
fuente
Recientemente estuve buscando esta misma solución y logré encontrar una simple sin asignar variables específicas para el último elemento seleccionado y el nuevo elemento seleccionado. Y esta pregunta, aunque muy útil, no proporcionó la solución que necesitaba. Esto resolvió mi problema, espero que resuelva el tuyo y el de los demás. Gracias.
¿Cómo obtengo el artículo anterior o el último?
fuente