如何在 JComboBox 中添加项目

How to Add Item in a JComboBox

我有一个 JComboBox 和一个 class 名为 clsPais:

public class clsPais {

private long id = 0;
private String nombre = "";

    public long getId() {
        return id;
    }
    public void setId(long id) {
        this.id = id;
    }
    public String getNombre() {
        return nombre;
    }
    public void setNombre(String nombre) {
        this.nombre = nombre;
    }
@Override
    public String toString() {
        return nombre;
    }

}

在我的 JFrame 代码中,我输入:

clsPais p1 = new clsPais();
p1.setId(1);
p1.setNombre("ARGENTINA");

clsPais p2 = new clsPais();
p2.setId(2);
p2.setNombre("BRASIL");

cmbPaises.removeAllItems();
cmbPaises.addItem(p1);

这里,我有一个错误,告诉我"incompatible types: clsPais canot be converted to string"。 我的 JComboBox 中的 addItem 只接受 String 参数。 我能做什么?

谢谢

你可以按照下面的方式进行..

    JComboBox<ClsPais> comboBox = new JComboBox<>();

    clsPais p1 = new clsPais();
    p1.setId(1);
    p1.setNombre("ARGENTINA");

    clsPais p2 = new clsPais();
    p2.setId(2);
    p2.setNombre("BRASIL");


    comboBox.addItem(p1);
    comboBox.addItem(p2);

您需要 cmbPaises 类型为 clsPais 而不是 String:

JComboBox<clsPais> cmbPaises = new JComboBox<>();
cmbPaises.addItem(p1);
cmbPaises.addItem(p2);

顺便说一句,在 Java 中,惯例是 class 名称以大写字母开头。