【发布时间】:2014-07-17 07:26:44
【问题描述】:
我想知道在 vaadin 中哪些列已折叠和未折叠。 有没有这个的监听器,我找不到?
【问题讨论】:
-
这仍然是一项新的增强功能,尚未提供。 dev.vaadin.com/ticket/6914
我想知道在 vaadin 中哪些列已折叠和未折叠。 有没有这个的监听器,我找不到?
【问题讨论】:
不支持开箱即用。但是你可以扩展 Table 来支持它。
类似
public class ColumnCollapsedObservableTable extends Table {
private List<ColumCollapsedListener> collapseListeners = new ArrayList<ColumCollapsedListener>();
@Override
public void setColumnCollapsed(Object propertyId, boolean collapsed)
throws IllegalStateException {
super.setColumnCollapsed(propertyId, collapsed);
fireColumnCollapsedEvent(new ColumnCollapsedEvent(this, propertyId, collapsed));
}
public void addColumnCollapsedListener(ColumnCollapsedListener l) {
...
}
public void removeColumnCollapsedListener(ColumnCollapsedListener l) {
...
}
private fireColumnCollapsedEvent(ColumCollapsedEvent event) {
...
}
}
【讨论】:
目前(Vaadin 7.7.5 可能也在之前的版本中)为此有一个 ColumnCollapseListener。
Table.addColumnCollapseListener(Table.ColumnCollapseListener listener)
编辑
对于未折叠的事件,将再次调用上面的侦听器方法(不幸的是,给定事件对象的参数完全相同,因此无法区分折叠和展开事件)
【讨论】: