降低 SWT Table 行中按钮的高度
Decreasing the height of Buttons in SWT Table rows
我有一个 org.eclipse.swt.widgets.Table
。我放了一个 org.eclipse.swt.widgets.Button
到最后一列。
如果未更改,我的 Button 会在垂直和水平方向占用单元格中所有可用的 space。
我找到了一种控制按钮宽度的方法(见下文)。然而,这种方法不适用于高处。如果可能的话,我宁愿将 Button 的高度降低一些像素。或者在上方和下方添加一些填充。或者增加行的高度,保持 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);
}
}
table 项目的高度由其内容决定。通常选择高度以便可以显示文本和图像。除非您实施 custom painting,否则您无法影响 table 项目高度。
要在按钮周围添加边距,您应该将其放入具有 suitable 布局的合成中(例如 FillLayout
和 marginWith
and/or marginHeight
相应设置)。
我有一个 org.eclipse.swt.widgets.Table
。我放了一个 org.eclipse.swt.widgets.Button
到最后一列。
如果未更改,我的 Button 会在垂直和水平方向占用单元格中所有可用的 space。
我找到了一种控制按钮宽度的方法(见下文)。然而,这种方法不适用于高处。如果可能的话,我宁愿将 Button 的高度降低一些像素。或者在上方和下方添加一些填充。或者增加行的高度,保持 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);
}
}
table 项目的高度由其内容决定。通常选择高度以便可以显示文本和图像。除非您实施 custom painting,否则您无法影响 table 项目高度。
要在按钮周围添加边距,您应该将其放入具有 suitable 布局的合成中(例如 FillLayout
和 marginWith
and/or marginHeight
相应设置)。