有一些“高级”表/电子表格SWT小部件(Nattable,Nebula Grid),但它们都不支持非常大的数据集。 Nattable是最接近的,但它在使用的数据类型中仍有限制,导致表中的行数变得有限。
我需要能够代表至少 2 ^ 32行,最好是2 ^ 64。
答案 0 :(得分:6)
SWT Matrix打破容量拦截器,允许任何BigInteger数量的行或列。它是封闭源,但可以免费用于私人和非商业用途。尽管此时早期发布了alpha版本。
答案 1 :(得分:3)
SWT.VIRTUAL
使用常规表有什么问题?然后,您可以使用LazyContentProvider,
为您提供回调,以便加载视图中所需的内容。
像这样......
TableViewertableViewer = new TableViewer(parent, SWT.VIRTUAL|SWT.BORDER|SWT.V_SCROLL);
// skipping the noise
tableViewer.setItemCount(100000);
tableViewer.setContentProvider(new LazyContentProvider());
tableViewer.setLabelProvider(new TableLabelProvider());
tableViewer.setUseHashlookup(true);
tableViewer.setInput(null);