我有一个从二维数组列表填充的 SWT 树,但结果不太正确。我正在尝试按项目编号对顶级树项目进行分组,但我的算法并不走运。我附上了一张图片来更好地解释一下。项目 4324226 与不同的子项一起出现两次,我想将两个子项归为一个父项。
这是我的树代码。有任何想法吗?我忽略了一些简单的事情吗?
long[][] listOrders;
listOrders = database.getUnfinishedOrders();
for (int i=0; i<listOrders.length; i++) {
TreeItem iItem = new TreeItem (tree, 0);
iItem.setText (Long.toString(listOrders[i][0]));
for (int j=1; j<listOrders[i].length; j++) {
TreeItem jItem = new TreeItem (iItem, 0);
jItem.setText (Long.toString(listOrders[i][j]));
}
}
最佳答案
我建议先创建一个模型(将其分组)并在您执行此操作后立即将其添加到树中。
从设计的角度来看,这会好很多。因为 View 内容与数据内容是分开的。
您可以使用映射来存储特定顺序的元素列表。
关于java - SWT树种群,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14385876/