0

我有一个JComboBox类型myclass。我CustomListRender用来显示 的属性之一myclass,它工作正常。

然后我设置myCombobox.setEditable(true)JComboBox变得可编辑,但默认情况下,文本设置为如下所示combobox

 com.mypackagename.myclass

谁能告诉我如何解决这个问题?

提前致谢。

4

1 回答 1

2

如何使用组合框:提供自定义渲染器中所述,

默认渲染器知道如何渲染字符串和图标。如果您将其他对象放在组合框中,则默认渲染器会调用该toString方法以提供要显示的字符串。

除非被覆盖,否则您可能会看到toString()继承自Object. 至少,您需要覆盖MyClass#toString()更新您的渲染器,并相应地提供自定义编辑器这里有一个相关的例子。大多数人更喜欢后者;您的sscce显示您的自定义渲染器将更容易建议替代方案。

于 2012-10-07T16:18:15.723 回答