有没有一种方法让 JTable 和 JTree 共用同一个模型,这样底层模型的任何更改都会立即反映在这两个组件中?
Outline
。它非常容易使用。一个简单的示例只需要不到30分钟即可完成。代码可以在此答案中找到。Obj
,您可以创建一个TableModel
和一个TreeModel
来观察Obj
的更改并做出相应的响应;或者您可以使Obj
实现TableModel
和TreeModel
(尽管我不喜欢业务对象实现GUI对象);或者您可以创建一个同时实现TableModel
和TreeModel
的类,并知道何时发生对Obj
的更改。这些接口是不同的,但使用下面相同的数据结构来实现它们应该是完全可行的。
看一下GlazedLists--有一种使用EventList来同时为JTable和JTree提供支持的能力。我不太熟悉JTree的渲染,但是GlazedLists的JTable部分非常可靠。