如何在每个单元格中创建一个带有 "x" 个按钮的 JList

How to Make a JList with "x" Buttons in Each Cell

我想制作一个很像 JList 的自定义组件,除了每个单元格右侧有一个 "x" 小按钮,用于从列表中删除该单元格(并触发事件).我知道您必须扩展 JList,但是查看 JList 的代码我不知道从那里去哪里。作为参考,我希望该列表类似于 macOS 消息应用程序(除了 "x" 按钮始终可见,而不仅仅是当鼠标悬停在单元格上时)。

I would like to make a custom component

我建议您通过扩展 JPanel 并向您的面板添加真实的组件来做到这一点。然后你可以实际添加JButton和"x"可以响应鼠标事件。

JList 不显示真实组件,仅显示组件的渲染图像,因此如果您尝试单击 "x"。

,它不会响应事件

另一种选择是使用 JTable。 JTable 允许您以列格式显示值。在这种情况下,它确实支持编辑器的概念,这将允许您将按钮添加到列中。例如查看 Table Button Column