JComboBox
- JComboBox JComponent 확장 가능 클래스이며 텍스트 필드의 조합입니다. 및 드롭다운 목록 사용자가 값을 선택할 수 있습니다.
- 컨트롤의 텍스트 필드 부분이 편집 가능한 경우 사용자는 필드에 값을 입력하거나 드롭다운 목록에서 검색된 값을 편집할 수 있습니다.
- 기본적으로 사용자는 JComboBox의 텍스트 필드 부분에 있는 데이터를 편집할 수 없습니다. . 사용자가 텍스트 필드를 편집할 수 있도록 하려면 setEditable(true) 을 호출하십시오. 방법.
- JComboBox ActionListener를 생성할 수 있습니다. , ChangeListener 또는 ItemListener 사용자가 콤보 상자에서 작업할 때.
- getSelectedItem() 메소드를 사용하여 JComboBox에서 선택하거나 입력한 항목을 가져올 수 있습니다.
예시
import java.awt.*; import java.awt.event.*; import javax.swing.*; public class JEditableComboBoxTest extends JFrame { public JEditableComboBoxTest() { setTitle("JEditableComboBox Test"); setLayout(new BorderLayout()); final JComboBox combobox = new JComboBox(); final JList list = new JList(new DefaultListModel()); add(BorderLayout.NORTH, combobox); add(BorderLayout.CENTER, list); combobox.setEditable(true); combobox.addItemListener(new ItemListener() { public void itemStateChanged(ItemEvent ie) { if (ie.getStateChange() == ItemEvent.SELECTED) { ((DefaultListModel) list.getModel()).addElement(combobox.getSelectedItem()); combobox.insertItemAt(combobox.getSelectedItem(), 0); } } }); setSize(new Dimension(375, 250)); setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); setLocationRelativeTo(null); setVisible(true); } public static void main(String[] args) throws Exception { new JEditableComboBoxTest(); } }
출력