0

Eclipse IDE 在 Jcombobox 上显示错误,表示 JcomboBox 无法参数化,例如:类似于下面显示的行

private final JComboBox<LaborHelper> labourname = new JComboBox<LaborHelper>();

这里我的项目执行环境是javaSE1.6

4

7 回答 7

5

JComboBoxJava 1.7 之前不支持类型规范(参数化)。因此,在 Java 1.6 或更早版本中会出现编译错误。

于 2012-10-09T16:45:09.227 回答
5

好的,所以您已经知道为什么会收到此错误。您如何摆脱它?

注意:这是一个 Netbeans 解决方案

右键单击JComboBox,转到:

Properties > Code >

在代码选项卡下,您会找到Type Paramters.

单击其右侧的选项菜单:

在此处输入图像描述

当下一个视图打开时,只需删除文本:

在此处输入图像描述

单击确定,就是这样。

于 2018-03-02T07:41:07.317 回答
4

查看JComboxBox 的 java 1.6 文档,该类JComboxBox不是 Java 1.6 的泛型类。

它接受一个数组或一个对象向量作为用户的选择,并通过调用对象的 toString 方法来显示它们(因此,如果要自定义标签,则必须覆盖它)。

要访问用户选择的值,您必须按如下方式转换所选项目: (LaborHelper)labourname.field.getSelectedItem()

但是,这应该适用于 java 1.7+,因为它JComboxBox已成为泛型类。

于 2012-10-09T16:49:44.583 回答
3

- JComboxBox随着Java 7 的到来支持 withType Parameters,在此之前它支持类型参数。

请参阅此链接:

JComboBox 警告阻止在 Eclipse 中打开设计页面

于 2012-10-09T16:55:10.737 回答
2

您只能参数化泛型类型。JComboBox没有通用版本。

更新

Java 7 中提供了通用版本JComboBox<E>。您可能需要升级您的 Java 版本。

于 2012-10-09T16:45:54.360 回答
0

即使在 Java 7 中,也存在一个未解决的错误:JDK-7067201 : Generics: BasicComboBoxRenderer

于 2013-11-20T16:02:57.823 回答
0

然后在 Eclipse (Kepler) 中似乎有一个错误:我选择了 JRE 1.6、JDK 1.6、编译器合规级别 1.6,但是在使用带有类型参数的 JComboBox 时 Eclipse 没有显示任何错误。很奇怪。

于 2015-07-09T09:00:24.353 回答