gpt4 book ai didi

java - 选择 JComboBox 中的项目

转载 作者:行者123 更新时间:2023-12-02 02:18:04 25 4
gpt4 key购买 nike

我有两个组合框,其中包含要转换的距离单位列表。现在,当我想选择例如。组合框 From (distance)... 中的“厘米”,我真的不需要组合框 To (distance)... 中的“厘米”,因为从厘米转换为厘米是没有意义的。

因此,当在从(距离)... 中选择“厘米”时,我希望将其在到(距离)... 组合框中删除。但是,当我更改选择(例如“米”)时,我希望“厘米”返回并且“米”消失等。

我设法删除了到(距离)...框中所选的项目,但在更改选择时不知道如何将其返回。此外,当我更改选择时,下面的代码只是删除 To (distance)... ComboBox 中的相应项目。

请指导我找到正确的解决方案。这是相应的代码。如果您需要,我可以给您完整的代码。谢谢!

private String[] convertFromDistance = {"From (distance)...", "Centimeter", "Inch", "Kilometer", "Knot", "Meter", "Mile", "Millimeter", "Yard"};
private String[] convertToDistance = {"To (distance)...", "Centimeter", "Inch", "Kilometer","Knot", "Meter", "Mile", "Millimeter", "Yard"};
private JComboBox fromListDistance, toListDistance;

fromListDistance.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
String list = (String)fromListDistance.getSelectedItem();

for (int i=0; i<convertToDistance.length; i++) {
if (convertToDistance[i].equals(list)) {
toListDistance.removeItem(convertToDistance[i]);
//here should go the code for adding back the item if selection is changed
}
}
}
});

toListDistance = new JComboBox<String>(convertToDistance);

最佳答案

在您的问题中,我应该做的第一件事是知道从 fromListDistance 组合框 中选择的选项是什么。之后,我必须重新填充 toListDistance 组合框,除了用户选择的选项之外。使用if语句很容易做到这一点

fromListDistance.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent evt) {
//saving the selected choice
String choise=fromListDistance.getSelectedItem().toString();

//here we remove all items from the combo box
toListDistance.removeAllItems();

for (int i = 0; i < convertToDistance.length; i++) {
String distance=convertToDistance[i];
//compare the selected choice with the convertToDistance[i]
if (choise.equals(distance)) {
continue;
}
toListDistance.addItem(distance);
}
}
});

关于java - 选择 JComboBox 中的项目,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48979527/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com