0

我有第三方属性类,它的内容是任意实现的。一些属性以 bean 的形式实现,而另一些则以键值对的形式实现。

我需要像这样实现属性编辑器

在此处输入图像描述

最简单的方法是什么?

我强调模型类没有任何要求。

更新

我的意思是有什么比 just 更强大的TableViewer吗?可能是一些支持的类Properties,或者有助于标记编辑器类型的注释库等......

4

2 回答 2

1

如果我正确理解您的问题:

  • 您有许多第三方课程。这些类中的每一个都类似于 bean,但不是完整的 java bean。
  • 您需要一个 GUI 来编辑这些类的属性。最好用尽可能少的努力。

最简单的方法(就编码而言)如下:

但是:请考虑以下两个潜在的错误以及您将如何修复它们。

  • 其他一些操作(在属性视图之外)会更改第三方类中的值。由于没有通知框架,GUI 仍将显示旧值。
  • 您需要能够支持 UNDO/REDO 吗?

使用第三方类时,上述两个问题都很难解决。因此,我强烈建议您学习 EMF 并使用 EMF 模型作为您的“主要数据源”。仅修改该中央数据源,并在特定时刻(例如,在模型事务之后)与第三方对象结构同步。

于 2014-01-13T10:09:49.277 回答
0

你只需要使用反射。获取类中所有看起来像 getter/setter 的方法,对已知类型( , 等)使用标准编辑器StringColor并在其他类型上递归。

于 2014-01-12T05:35:01.513 回答