【发布时间】:2017-04-22 22:50:13
【问题描述】:
有人可以帮我吗? 我在 SWT 中有一个表格,我只想显示一些表格项目,但该表格只显示一个项目,而其他项目则带有垂直滚动。我想显示所有内容,无需滚动。我尝试使用 SWT_NO_SCROLL 选项但不工作。我有一个创建表格的方法和其他填充它的方法,创建一个新的表格项目,它们工作得很好,问题是只显示第一个项目而另一个正在滚动。
我的代码是:
private void createTable(Composite parent){
table = new Table (parent, SWT.BORDER);
TableColumn tcFile = new TableColumn(table, SWT.LEFT);
TableColumn tcStatus = new TableColumn(table, SWT.LEFT);
tcFile.setText("File");
tcStatus.setText("Status");
tcFile.setWidth(500);
tcStatus.setWidth(500);
table.setVisible(true);
table.setHeaderVisible(true);
}
private void populateTable(String file, String status){
TableItem item = new TableItem(table, SWT.LEFT);
item.setText(new String[] { file, status});
}
Composite top = new Composite(parent, SWT.WRAP);
GridLayout layout = new GridLayout();
layout.marginHeight = -5;
layout.marginWidth = 0;
top.setLayout(layout);
Composite banner = new Composite(top, SWT.WRAP);
banner.setLayoutData(new GridData(GridData.FILL, GridData.VERTICAL_ALIGN_BEGINNING, false, false));
layout = new GridLayout();
layout.marginHeight = 0;
layout.marginWidth = 10;
layout.numColumns = 5;
banner.setLayout(layout);
createTable(top);
【问题讨论】:
-
如何设置表格的垂直尺寸?您使用的是 Layout 还是 setBounds?
标签: java swt tableviewer