setWidth
类的TableViewerColumn
方法采用整数类型,我真的很想使用百分比,无论如何要执行此操作,或者打包表或其他内容?
最佳答案
使用TableLayout
布置表格,并使用ColumnWeightData
指定每列的“权重”。
例如,两列权重为60/40:
TableViewer viewer = ....
TableLayout layout = new TableLayout();
TableViewerColumn col1 = new TableViewerColumn(viewer, SWT.LEAD);
layout.setColumnData(col1.getColumn(), new ColumnWeightData(60));
TableViewerColumn col2 = new TableViewerColumn(viewer, SWT.LEAD);
layout.setColumnData(col2.getColumn(), new ColumnWeightData(40));
viewer.getTable().setLayout(layout);