监听器类对TableViewer没有影响?

时间:2015-01-02 18:08:45

标签: java swt eclipse-rcp jface

我创建了一个实现Listener的类。这个监听器在我的RCP视图中控制我的JFace表查看器的大小调整,但是,因为我已经在另一个类中实现了监听器,所以当调整表的大小时没有任何反应,为什么会发生这种情况?

我的听众:

public class TableResizeListener implements Listener {

TableViewer viewer;
TableColumnLayout layout;

public TableResizeListener(TableViewer viewer, TableColumnLayout layout) {

    this.viewer = viewer;
    this.layout = layout;

}

@Override
public void handleEvent(Event e) {

    TableColumn[] colunas = viewer.getTable().getColumns();

    layout.setColumnData(colunas[0], 
            new ColumnWeightData(50, 100, true));

    layout.setColumnData(colunas[1], 
            new ColumnWeightData(50, 100, true));

}

}

视图中的简单代码:

// resize listener
    table.addListener(SWT.RESIZE, new TableResizeListener(tableViewerCustos, tableCustosLayout));

提前致谢,Polska:)

1 个答案:

答案 0 :(得分:1)

我刚刚将eventType更改为SWT.Resize,而不是SWT.RESIZE,现在听众工作正常。