在Tableviewer中编辑问题

时间:2017-03-13 10:12:59

标签: eclipse-plugin swt eclipse-rcp jface

我创建了一个包含两列的表查看器。第一列名称为" Fristname"和第二列名称"姓氏"。我为这两列添加了编辑器支持,但我只能在第一列中进行编辑/选择。在我的第二列中无法进行编辑/选择。不知道为什么有人请帮帮我?以下是代码段。

public class EditColumn extends EditingSupport {
    private final TableViewer viewer;
    private final CellEditor editor;

    public EditColumn(TableViewer viewer) {
        super(viewer);
        this.viewer = viewer;
        this.editor = new TextCellEditor(viewer.getTable());

    }

    @Override
    protected boolean canEdit(Object element) {
        System.out.println("can edit");
        return true;
    }

    @Override
    protected CellEditor getCellEditor(Object element) {

        return editor;
    }

    @Override
    protected Object getValue(Object element) {
        // TODO Auto-generated method stub
        return ((Person) element).getFirstName();
    }

    @Override
    protected void setValue(Object element, Object value) {
        ((Person) element).setFirstName(String.valueOf(value));
        viewer.update(element, null);

    }
}

在EditColumn类Code

下面
gcloud ml-engine jobs submit training

1 个答案:

答案 0 :(得分:0)

您的EditColumn课程始终使用getFirstName的{​​{1}}和setFirstName方法,因此您可以编辑姓氏列,但未使用正确的值。< / p>

您需要为每列使用不同的Person类。