我正在创建一个有房间的 JOutline,每个房间里面都有多个产品。您可以选择单个产品并点击详细信息,但我还需要能够使用复选框选择多个产品旁边的复选框。
我特别在寻找一种将复选框放在对象最左侧的方法。
有什么办法可以做到这一点,还是我最好研究一下JXTreeTable?
我正在创建一个有房间的 JOutline,每个房间里面都有多个产品。您可以选择单个产品并点击详细信息,但我还需要能够使用复选框选择多个产品旁边的复选框。
我特别在寻找一种将复选框放在对象最左侧的方法。
有什么办法可以做到这一点,还是我最好研究一下JXTreeTable?
如这里所讨论的,Outline需要您实现RowModel接口,该接口应传递给您的OutlineModel构造函数。
class MyRowModel implements RowModel {…}
TreeModel myModel = new MyTreeModel(…);
OutlineModel outlineModel = DefaultOutlineModel.createOutlineModel(
myModel, new MyRowModel(), …);
Outline outline = new Outline();
outline.setModel(outlineModel);
在您的实现中RowModel,遵循熟悉的JTable 编辑/渲染方案来获取 type 的模型值Boolean:
getColumnClass()实施应返回相关列Boolean.class。
isCellEditable()实施应返回相关列 true。
实现应该从getColumnClass()给定节点返回值myModel。
实现应该更新给定节点,因此setValueFor()渲染器将在编辑结束时看到新值。
