swt/jface插件开发,怎样设置table表格的宽度?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了swt/jface插件开发,怎样设置table表格的宽度?相关的知识,希望对你有一定的参考价值。

table表格每一行的宽度怎么调节啊,宽度太窄了,在表格中添加text或下拉框后,两行之间都有覆盖部分了,所以想添加表格的宽度,可以等于text的宽度,求高手!
这个样子太拥挤了,不美观啊,怎么修改呢?

下拉框可以试试用CCombo,用这个宽度和表格一样,不会有覆盖的部分追问

添加的下拉框就是这个,但是table中的每行上下宽度很小,当两行中都添加下拉框,会显得很拥挤。

追答

你用的是Combo那个组件,用CCombo就是下面这个图的效果

参考技术A Composite container = (Composite) super.createDialogArea(parent);
TableColumnLayout tclayout = new TableColumnLayout();
container.setLayout(tclayout);
tableViewer = new TableViewer(container, SWT.FULL_SELECTION | SWT.BORDER | SWT.V_SCROLL | SWT.H_SCROLL);

TableColumn colIndex = new TableColumn(table, SWT.NONE);
colIndex.setText("");
tclayout.setColumnData(colIndex, new ColumnWeightData(25, 25, false));
colIndex.setResizable(false);追问

在哪弄得啊,只是一部分吧,都不对,能详细点么?

追答

我用的是tableviewer,tableviewer的父composite的layout设置为TableColumnLayout,然后在TableColumnLayout上设置setColumnData

参考技术B Composite container = (Composite) super.createDialogArea(parent);
TableColumnLayout tclayout = new TableColumnLayout();
container.setLayout(tclayout);
tableViewer = new TableViewer(container, SWT.FULL_SELECTION | SWT.BORDER | SWT.V_SCROLL | SWT.H_SCROLL);

TableColumn colIndex = new TableColumn(table, SWT.NONE);
colIndex.setText("");
tclayout.setColumnData(colIndex, new ColumnWeightData(25, 25, false));
colIndex.setResizable(false);

以上是关于swt/jface插件开发,怎样设置table表格的宽度?的主要内容,如果未能解决你的问题,请参考以下文章

eclipse插件开发学习笔记

swt/Jface 如何将鼠标显示为手形

SWT/JFace问题:如何在单元格中只显示图片

SWT(JFace) Wizard(Eclipse插件编程必备)

JFace和SWT有啥区别

SWT/JFace 中CheckBoxTreeViewer 子节点部分选中,父节点为半选状态,改用tree+checkox的方式如何实现?