by Dinesh Thakur Category: Swing

As a group of radio buttons, a drop-down list is a form of forcing the user to select only one element of a group of possibilities. However, it is a more compact way to do this, and is easier to change the elements of the list without surprising the user.

The JComboBox component, similar to Choice component in AWT, is a combination of textfield and drop down list of items. User can make selection by clicking at an item from the list or by typing into the box. It can be created by instantiating the JCombobox class.
The Java JComboBox box is not like Windows, which lets you select from a list or type your own selection. With a box JComboBox is choose one and only one element of the list. 

 JComboBox methods 



void addItem(object)

Adds an item to  the list

void removeItem(object)

Removes an item from the list

void removeAllItems()

Removes all items from the list

object getItemAt(int)

Returns the list item at the index position specified by the integer argument

int getItemCount() 

Returns the number of items in the list

int getMaximumRowCount() 

Returns the maximum number of items the combo box can display without a scroll bar

int getSelectedIndex() 

Returns the position of the currently selected item

object getSelectedItem() 

Returns the currently selected item

object[] getSelectedobjects() 

Returns an array containing selected objects

void setEditable(boolean)

Sets the field to be editable or not editable

void setMaximumRowCount(int) 

Sets the number of rows in the combo box that can  display at one time

void setSelectedIndex(int) 

Selects the index at the position indicated by the argument

void setSelectedItem(object) 

Sets the selected item in the combo box display area to be the object argument

 In the following example, the JComboBox box starts with a number of inputs and then new entries are added when a button is pressed.

import javax.swing.*;

import java.awt.*;
class ComboBoxExample extends JFrame
      setLayout(new FlowLayout());
      String[] month = {"Jan","feb","mar","Apr","May","Jun","Jul","Aug","sep","oct","Nov","Dec"};
      JLabel lblDay = new JLabel("Day");
      JLabel lblMonth = new JLabel("Month");
      JLabel lblYear = new JLabel("Year");
      JComboBox cboDay = new JComboBox();
      JComboBox cboMonth = new JComboBox(month);
      JComboBox cboyear = new JComboBox();
          for(int i=1;i<=31;i++)
               for(int i=2009;i>1970;i--)
                    add(lblDay);   add(cboDay);
                    add(lblMonth); add(cboMonth);
                    add(lblYear);  add(cboyear);
 class JComboBoxJavaExample
     public static void main(String args[])
           ComboBoxExample frame = new ComboBoxExample();
           frame.setTitle("ComboBox Java Example");

JComboBox in Java Swing Example

Popular Article