リスナーを実装するクラスを作成しました。 このリスナーはRCPビューでJFace Table Viewerのサイズ変更を制御しますが、別のクラスでリスナーを実装しているため、テーブルのサイズを変更しても何も起こりません。なぜこれが起こるのですか?
私のリスナー:
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は1eventTypeを変更しました SWT.Resize
、 の代わりに SWT.RESIZE
、そして今、リスナーは正常に動作しています。