我想"灰色" JTable的特定行,以便不能以任何方式选择它们。其他行仍应可选。我该如何做到这一点?
答案 0 :(得分:2)
您可以覆盖JTable.changeSelection()
以便在选中时取消选择有问题的行,或者为您的表格提供自定义ListSelectionModel
,其中您可以覆盖setSelectionInterval()
,addSelectionInterval()
等。以防止首先选择行。
答案 1 :(得分:1)
您需要创建一个自定义TableCellRenderer,它将显示灰色的“已禁用”信息。有关如何创建这些渲染器的更多信息,请阅读Swing Table Tutorial,尤其是“概念:编辑器和渲染器”一节。
答案 2 :(得分:0)
创建一个临时TableModel
,其中只包含您要选择的行。选择完成后以及要还原时,请更改回原始TableModel