温馨提示×

Java下拉框的联动效果实现

小樊
141
2024-08-07 03:14:23
栏目: 编程语言

在Java中实现下拉框的联动效果,可以使用Swing组件库中的JComboBox和ItemListener接口。以下是一个简单的示例代码,演示了如何实现两个下拉框之间的联动效果:

import javax.swing.*;
import java.awt.event.ItemEvent;
import java.awt.event.ItemListener;

public class ComboBoxDemo {
    public static void main(String[] args) {
        JFrame frame = new JFrame("ComboBox Demo");
        frame.setSize(300, 200);

        JPanel panel = new JPanel();
        frame.add(panel);

        String[] fruits = {"Apple", "Banana", "Orange"};
        JComboBox<String> combo1 = new JComboBox<>(fruits);
        JComboBox<String> combo2 = new JComboBox<>();

        combo1.addItemListener(new ItemListener() {
            @Override
            public void itemStateChanged(ItemEvent e) {
                if (e.getStateChange() == ItemEvent.SELECTED) {
                    String selectedFruit = combo1.getSelectedItem().toString();
                    if (selectedFruit.equals("Apple")) {
                        combo2.removeAllItems();
                        combo2.addItem("Red");
                        combo2.addItem("Green");
                        combo2.addItem("Yellow");
                    } else if (selectedFruit.equals("Banana")) {
                        combo2.removeAllItems();
                        combo2.addItem("Yellow");
                        combo2.addItem("Green");
                    } else if (selectedFruit.equals("Orange")) {
                        combo2.removeAllItems();
                        combo2.addItem("Orange");
                    }
                }
            }
        });

        panel.add(combo1);
        panel.add(combo2);

        frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        frame.setVisible(true);
    }
}

在这个示例代码中,我们创建了两个下拉框combo1和combo2,通过combo1的ItemListener来实现联动效果。当combo1的选项发生改变时,根据选中的水果类型,动态添加combo2的选项。例如,如果选中的水果是Apple,那么combo2的选项将为"Red"、“Green"和"Yellow”。通过这种方式可以实现下拉框的联动效果。

0