0

我正在尝试在 SWT 中呈现具有以下行的下表:

名称1 | anotherProperty |BUTTON1(EDIT) BUTTON2(REMOVE) BUTTON3(DEACTIVATE)

使用SWT - Tableviewer 将删除按钮添加到表中的列中,我只能逐列呈现一个按钮。

有没有办法做到这一点?

4

1 回答 1

3

与添加单个按钮的方式相同,您也可以添加多个按钮,但对于这些按钮,您将需要一个额外的容器。您可以尝试以下方法:

col.setLabelProvider(new ColumnLabelProvider() {
  @Override
  public void update(ViewerCell cell) {
     TableItem item = (TableItem) cell.getItem();

     Composite buttonPane = new Composite(getTable(), SWT.NONE);
     buttonPane.setLayout(new FillLayout());

     Button button = new Button(buttonPane,SWT.NONE);
     button.setText("Edit");

     button = new Button(buttonPane,SWT.NONE);
     button.setText("Remove");

     button = new Button(buttonPane,SWT.NONE);
     button.setText("Deactivate");

     TableEditor editor = new TableEditor(getTable());
     editor.grabHorizontal  = true;
     editor.grabVertical = true;
     editor.setEditor(buttonPane, item, columnIndex);
     editor.layout();
     }
  });
于 2013-01-14T10:56:03.547 回答