在Java Swing中具有每个复选框的项目列表的最佳方法是什么?
即是一个JList,其中每个项目都有一些文本和一个复选框?
创建一个自定义ListCellRenderer并将其分配给JList。
ListCellRenderer
JList
此自定义ListCellRenderer必须JCheckbox在getListCellRendererComponent(...)方法的实现中返回a 。
JCheckbox
getListCellRendererComponent(...)
但这JCheckbox将是不可编辑的,因为屏幕上的简单绘画取决于您何时JCheckbox必须“勾选”,
例如,在选中该行时将其选中(参数isSelected),但如果选择更改,则不会保留检查状态。最好在下方显示参考数据进行检查ListModel,但是您可以决定由谁来实现更改数据检查状态并将更改通知JList要重绘的方法。
isSelected
ListModel
如果需要的话,我会在稍后发布示例代码