gpt4 book ai didi

java - 如何从列表中隐藏 jcombobox 项目,但仍使用它从数据库表中获取数据

转载 作者:行者123 更新时间:2023-12-01 12:15:27 26 4
gpt4 key购买 nike

您好,所以不知何故设法使该 id 未显示在组合框中,但是当我按下“确定”按钮时如何才能获得 id 值?使用

String from = (String) jComboBox1.getSelectedItem(); 

当按下按钮时不起作用......我明白

String code = (String) item.getValue(); 

我需要的 ID,但如何将其传递给下一个查询?

public void select() {
try {
String sql = "select * from category";
pst = con.prepareStatement(sql);
rs = pst.executeQuery();

while (rs.next()) {

jComboBox1.addItem(new Item<String>(rs.getString("mkid"), rs.getString("name")));

}

} catch (Exception e) {
JOptionPane.showMessageDialog(null, e);
}

jComboBox1.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
JComboBox jComboBox1 = (JComboBox) e.getSource();
Item item = (Item) jComboBox1.getSelectedItem();
String code = (String) item.getValue();
System.out.println(code);
}
});


}


The item

public class Item<V> implements Comparable<Item>
{
private V value;
private String description;


public Item(V value, String description)
{
this.value = value;
this.description = description;
}


public V getValue()
{
return value;
}

public String getDescription()
{
return description;
}

public int compareTo(Item item)
{
return getDescription().compareTo(item.getDescription());
}

@Override
public boolean equals(Object object)
{
Item item = (Item)object;
return value.equals(item.getValue());
}

@Override
public int hashCode()
{
return value.hashCode();
}


@Override
public String toString()
{
return description;
}

最佳答案

您需要创建一个自定义对象来包含您的数据,然后将该自定义对象添加到模型中。然后,您需要使用自定义渲染器来显示此对象。

查看Combo Box With Custom Renderer有关如何执行此操作的示例。

关于java - 如何从列表中隐藏 jcombobox 项目,但仍使用它从数据库表中获取数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27043333/

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