3

我想要做的是创建一个 JTree,每个单元格包含普通文本,但也包含每个单元格的右对齐文本(右对齐到树的边缘,无论层次结构级别如何)。

我尝试创建自己的 TreeCellRenderer,但单元格的大小没有更新。我也使用自定义树 UI 尝试了这个想法,但遇到了类似的问题。

我也尝试过创建一个自定义组件,在树的右侧“粘合”了一个 JPanel。这是最成功的,但我无法让树单元向右延伸并触摸这个额外的面板:

替代文字 http://img718.imageshack.us/img718/3676/problem.png

4

1 回答 1

1

您可以尝试使用SwingX包中的 JXTreeTable。

jxtreetable 示例 http://blogs.sun.com/geertjan/resource/outline-tim-browser.png

然后,您将定义这样一个包含两列的对象(一列用于树,另一列用于右对齐文本),它应该可以正常工作。

但是,为了防止它看起来像一个表格,我建议您停用标题 (setTableHeader(null)),并使用它们的“打包”方法,使列具有最佳大小。

于 2010-01-21T10:18:50.833 回答