gpt4 book ai didi

java - 从对象中获取值并添加到 jcombobox 中

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

对你来说美好的一天我有 jcombobox 从数据库中按对象填充它,它可以很好地使用此代码:

final JComboBox pruCompanyCB = new JComboBox(DAOFactory.getInstance()
.getPruComanyDAOImpl().findAll().toArray());
pruCompanyCB.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent arg0) {
JComboBox comboBox = (JComboBox) arg0.getSource();
PruCompany pruCompany = (PruCompany) comboBox.getSelectedItem();
CRSevice.getInstance().getPruCompanySrv().setPruCompany(pruCompany);

并使用下一个代码来选择

car.setPruCompany((PruCompany) pruCompanyCB.getSelectedItem());

但是在 gui 中,组合框中的项目看起来像

PruCompany{id=1,国家/地区=国家/地区{id=4,名称=“美国”}}

类似对象 toString() 格式

如何从 pruCompany 对象中 getName() 并在组合框中仅显示名称而不更改模型类中的 toString() 方法请以任何方式 致以最诚挚的问候和祝愿

最佳答案

另一种方法是创建一个自定义渲染器来显示添加到 ComboBoxModel 的对象的特定属性。

Combo Box With Custom Render给出了如何创建自定义渲染器的示例。

大多数人在创建自定义渲染器时忘记实现自定义KeySelectionManager,以便也可以使用键盘而不仅仅是鼠标来完成项目选择。上面链接中使用的渲染器也支持此功能。

关于java - 从对象中获取值并添加到 jcombobox 中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31345852/

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