Listening for Action Events from a JComboBox Component : JComboBox « Swing « Java Tutorial






import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;

import javax.swing.JComboBox;

public class Main {
  public static void main(String[] argv) throws Exception {
    String[] items = { "item1", "item2" };
    JComboBox cb = new JComboBox(items);
    cb.setEditable(true);

    // Create and register listener
    MyActionListener actionListener = new MyActionListener();
    cb.addActionListener(actionListener);
  }
}

class MyActionListener implements ActionListener {
  Object oldItem;

  public void actionPerformed(ActionEvent evt) {
    JComboBox cb = (JComboBox) evt.getSource();
    Object newItem = cb.getSelectedItem();

    boolean same = newItem.equals(oldItem);
    oldItem = newItem;

    if ("comboBoxEdited".equals(evt.getActionCommand())) {
      // User has typed in a string; only possible with an editable combobox
    } else if ("comboBoxChanged".equals(evt.getActionCommand())) {
      // User has selected an item; it may be the same item
    }
  }
}








14.12.JComboBox
14.12.1.Creating JComboBox Components
14.12.2.Add Items to JComboBoxAdd Items to JComboBox
14.12.3.Get selected Item from JComboBoxGet selected Item from JComboBox
14.12.4.Getting and Setting the Selected Item in a JComboBox Component
14.12.5.Editable JComboBox
14.12.6.If the combobox is editable, the new value can be any value
14.12.7.Listen to JComboBox with ItemListenerListen to JComboBox with ItemListener
14.12.8.Sharing the Data Model between two JComboBoxesSharing the Data Model between two JComboBoxes
14.12.9.Sharing the Data Model for a JComboBox and JListSharing the Data Model for a JComboBox and JList
14.12.10.Editing JComboBox ElementsEditing JComboBox Elements
14.12.11.Listening to Keyboard Events with a KeySelectionManager
14.12.12.A Color Combo Box EditorA Color Combo Box Editor
14.12.13.Setting ComboBox Editor and ComboBox RendererSetting ComboBox Editor and ComboBox Renderer
14.12.14.Combobox cell rendererCombobox cell renderer
14.12.15.Custom JComboBox Pop-up ButtonCustom JComboBox Pop-up Button
14.12.16.JComboBox Using the Custom ModelJComboBox Using the Custom Model
14.12.17.Get Model from JComboBox and set it to JList
14.12.18.Adding and Removing an Item in a JComboBox Component
14.12.19.Add an item to the end of the list
14.12.20.Add an item after the first item
14.12.21.Getting the Items in a JComboBox Component
14.12.22.Remove first item
14.12.23.Remove the last item
14.12.24.Remove all items
14.12.25.Determining When the Menu of a JComboBox Component Is Displayed
14.12.26.Listening for Action Events from a JComboBox Component
14.12.27.Listening for Changes to the Selected Item in a JComboBox Component
14.12.28.Setting the Number of Visible Items in the Menu of a JComboBox Component
14.12.29.Displaying the Menu in a JComboBox Component Using a Keystroke If the Selected Item Is Not Unique
14.12.30.Determining If the Menu of a JComboBox Component Is Visible
14.12.31.Displaying the Menu in a JComboBox Component Using a Keystroke
14.12.32.Selecting an Item in a JComboBox Component with Multiple Keystrokes
14.12.33.Customizing a JComboBox Look and Feel