降低 SWT 表行中按钮的高度



我有一个org.eclipse.swt.widgets.Table.我放了一个org.eclipse.swt.widgets.Button到最后一列。

如果它保持不变,我的按钮会在垂直和水平方向上占用单元格中的所有可用空间。

我想出了一种方法来操纵按钮的宽度(见下文)。但是,这种方法不适用于高度。如果可能的话,我宁愿将按钮的高度降低一些像素。或者在上面和下面添加一些填充。或者增加行的高度并保持按钮的高度不变。
任何帮助都非常感谢。 这是我到目前为止所拥有的:

private void createButtons(Table table) {
int items = tableViewer.getTable().getItems().length;
TableEditor[] editors = new TableEditor[items];
Button[] buttons = new Button[items];
for (int i = 0; i < items; i++) {
Button button = new Button(table, SWT.PUSH);
buttons[i] = button;
button.setText("Details");
button.setSize(100, 10); //(Works perfectly on width, fails on height) 
TableEditor editor = new TableEditor(tableViewer.getTable());
editors[i] = editor;
editor.minimumHeight = button.getSize().y;
editor.minimumWidth = button.getSize().x;
editor.setEditor(button, tableViewer.getTable().getItem(i), 3);
}
}

表项的高度由其内容决定。通常选择高度,以便可以显示文本和图像。除非实现自定义绘制,否则无法影响表项高度。

要在按钮周围添加边距,应将其放入具有合适布局的复合中(例如,具有相应设置marginWith和/或marginHeightFillLayout)。

最新更新