계층적 데이터에 대한 동적 JComboBox 생성
질문에 제공된 것과 같은 계층적 구조를 나타내는 데이터로 작업할 때 동적 JComboBox는 사용자 상호 작용을 크게 향상시키고 데이터 선택을 단순화할 수 있습니다. 이를 달성하려면 다양한 계층 구조 수준을 나타내는 여러 ComboBoxModel이 필요합니다.
이 특정 예에는 세 개의 코스(Course1, Course2, Course3)와 해당 단위(A1, A2, B1, B2)가 있습니다. , B3, B4, C1, C2). 동적 JComboBox를 생성하려면 먼저 각 코스에 대해 ComboBoxModel을 생성합니다. 이러한 모델은 다음과 같이 각 코스의 단위를 보유합니다.
models[0] = new DefaultComboBoxModel(new String[] {"A1", "A2"}); models[1] = new DefaultComboBoxModel(new String[] {"B1", "B2", "B3", "B4"}); models[2] = new DefaultComboBoxModel(new String[] {"C1", "C2"});
다음으로 첫 번째 JComboBox(콤보1)를 코스로 채웁니다.
combo1 = new JComboBox(new String[]{ "Course 1", "Course 2", "Course 3" });
그런 다음 두 번째 JComboBox를 채웁니다. 기본적으로 첫 번째 코스의 단위가 포함된 JComboBox(콤보2):
combo2.setModel(models[0]);
마지막으로 선택을 처리하려면 콤보1에 ActionListener를 추가하세요. 선택한 코스가 콤보1에서 변경되면 해당 단위가 콤보2에 채워집니다.
@Override public void actionPerformed(ActionEvent e) { int i = combo1.getSelectedIndex(); combo2.setModel(models[i]); }
이 접근 방식을 구현하여 사용자가 코스를 선택하고 연결된 ComboBox에 채워지는 해당 단위를 볼 수 있는 동적 JComboBox를 만듭니다. . 이러한 동적 동작을 통해 특히 계층적이거나 복잡한 데이터 구조를 처리할 때 직관적인 탐색 및 데이터 선택이 가능합니다.
위 내용은 계층적 데이터에 대한 동적 JComboBox를 만드는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!