我开始在Java中使用SWT GUI工具包。我需要将一些数据附加到TreeItems。我之前使用过的每个工具包都有一个树项,它包含一个原始指针或一个基础对象引用来提供基本的数据包含,但我在SWT中的TreeItem中找不到一个。
如何将数据附加到TreeItem?
答案 0 :(得分:4)
这很简单。
TreeItem treeItem = new TreeItem(tree, SWT.NONE);
treeItem.setData("key", obj);
获取数据时:
Object obj = treeItem.getData("key");
答案 1 :(得分:1)
答案是:用纯SWT你不能 标准窗口小部件工具包仅处理窗口小部件,它们的层次结构和可视化表示。将数据绑定到窗口小部件是构建在SWT之上的更高级的JFace框架(尤其是它的数据绑定工具)的主题。您需要一些时间来掌握它,但因此您获得了Eclipse平台的强大功能。它使您能够将模型绑定到视图,即使在两个方向上也是如此 (→更改为模型对象会立即反映在UI上,反之亦然) 目前,您必须保留单独的项目列表,并且需要使用索引。
答案 2 :(得分:0)
在SWT 4.2中,可能在早期版本中(虽然我没有检查),类TreeItem
是Widget
的子类,Widget
有setData(Object o)
和getData()
。您可以使用它将任意特定于应用程序的数据附加到TreeItem
个实例。