Java Swing:如何自定义JList的项目?

时间:2014-05-08 06:02:52

标签: java android swing awt jlist

我是Swing框架的新手。我有以下列表来设计..

enter image description here

我们有什么方法可以在JList中设置自定义列表项吗?就像在Adapter中编写自定义Android一样,其中getView()方法将返回View以显示为ListItem ...

1 个答案:

答案 0 :(得分:4)

您将需要自定义渲染器。您可以使用DefualtListCellRenderer作为渲染组件使用Providing a Custom Renderer,也可以创建自定义JLabel,您可以通过扩展组件并阻止ListCellRenderer来指定渲染组件。 1}}。

您可以看到更多ListCellRenderer questions。链接指向“如何使用组合框”教程,但组合框和ListCellRenderer使用相同类型的渲染器。

您将找到的基本概念是您必须覆盖方法

JLists

适用于自定义public Component getListCellRendererComponent( JList list, Object value, int index, boolean isSelected, boolean cellHasFocus) { ListCellRenderer。 Value将返回每个列表项的值。列表项可以是对象,例如DefaultListCellRenderer,其中包含字段Personid。因此,您可以将值设置为name并使用必要的字段来呈现组件。

Person

所以基本上只是把它分解为“你会如何渲染其中一个细胞?”你会用什么组件?然后只需实现渲染器类/方法