【发布时间】:2010-10-13 23:41:09
【问题描述】:
这基本上是一个架构问题。
我想在处理 Swing 组件时实现composite pattern;也就是说,我想将多个组件与它们的侦听器和逻辑组合在一个组件后面以便于处理。
以一个简单的目录浏览器为例;比如说,JScrollPane 中的 JTree 具有一些在用户扩展 JTree 节点时处理填充文件名的逻辑。你将如何实现它?
你扩展 JScrollPane 并在构造函数中添加 JTree 等,然后你的应用程序处理 JScrollPaneExtended 类吗?或者您是否扩展了JPanel 或JComponent?或者当您填充 JFrame 时,您是否将所有这些类拼接到一个您调用的方法中?或者是其他东西?为什么?
我基本上是在寻找其他人使用的粗略指南;我显然想处理某种形式的 JComponent,以便在构建 GUI 时更容易处理,但是不知何故,为了放置胶水代码而扩展最顶层的组件(在本例中为 JScrollPane)感觉不太合适。
【问题讨论】:
标签: java design-patterns swing composite