0

データ モデルが DefaultTreeTableModel を拡張し、CustomNode が AbstractMutableTreeTableNode を拡張する JXTreeTable があります。各列は、階層ツリー ノードと同様に、期待どおりに編集可能です。

JXTreeTable の階層列にカスタム エディタ (TreeTableCellEditor) を適用する方法は?

以下はいくつかの試みでしたが、予期しない結果が得られました。

treeTable.setCellEditor(editor) 
treeTable.getColumnModel().getColumn(0).setCellEditor(editor)
treeTable.getColumn(0).setCellEditor(editor)
treeTable.getColumnExt(0).setCellEditor(editor)

階層列のレンダリングに使用される固有のツリーを取得できましたが、それを介してカスタム エディターを指定することもできませんでした。

private JTree getTree(JXTreeTable treeTable){
     try{
        Field field = JXTreeTable.class.getDeclaredField("renderer");
        field.setAccessible(true);
        return (JTree)field.get(treeTable);
     }catch(NoSuchFieldException | SecurityException | IllegalArgumentException | IllegalAccessException ex){
        throw new RuntimeException(ex);
     }
}

以前に投稿された「回避策」があったようですが、ページ コンテンツにアクセスできません: http://forums.java.net/jive/message.jspa?messageID=387603 ( https:// java.net/projects/swingx/lists/issues/archive/2012-06/message/22 )

カスタムエディタをツリー列に指定する手がかりはありますか?

フィードバックをお寄せいただきありがとうございます。

4

1 に答える 1