在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”。通过这种方式可以实现下拉框的联动效果。