我正在使用 aTableViewer
并且我试图让所有列都假设其最长的文本项的宽度。
到目前为止,我已经创建了一个TableLayout
将列添加到表中。问题是添加列需要使用ColumnWeightData
which 迫使我为列指定大小。但是,我事先并不确切知道该列的宽度应该是多少——它可以是任何东西。
theTableViewer = new TableViewer(comp, SWT.MULTI | SWT.BORDER | SWT.FULL_SELECTION);
GridData theTableGridData = new GridData(SWT.FILL, SWT.FILL, true, true);
theTableViewer.getTable().setLayoutData(theTableGridData);
TableLayout layout = new TableLayout();
layout.addColumnData(new ColumnWeightData(100, true));
layout.addColumnData(new ColumnWeightData(100, true));
layout.addColumnData(new ColumnWeightData(100, true));
layout.addColumnData(new ColumnWeightData(100, true));
有谁知道如何让 TableViewer 自动正确调整其列的大小以包含所有内容?