我有一个 Vaadin 选项卡菜单,每个选项卡当然包含不同的内容。现在,如果内容是具有动态生成内容的自己的类,那么在选择选项卡时如何强制更新内容?
我的内容类实现了View
,因此它作为一个enter(ViewChangeEvent event)
,如果我使用Navigator
来正常触发改变观点。
但是,然后我使用选项卡来更改内容,没有触发 ViewChangeEvent 。
我如何触发选项卡特定 View 内容的 enter()
方法?
@VaadinComponent
@UIScope
public class MyView extends CssLayout implements View {
private Label label;
public MyView() {
label = new Label("empty");
}
@Override
public void enter(ViewChangeEvent event) {
label.setValue("entered");
}
}
@VaadinComponent
@UIScope
public class MyMenu extends CssLayout {
private TabSheet tabs;
public MyMenu() {
tabs = new TabSheet();
addComponent(tabs);
}
@Autowired
private MyView myview;
@PostConstruct
public void init() {
tabs.addComponent(myview);
//some more tabs
}
}
最佳答案
您可以使用这样的快捷方式监听器
component.addShortcutListener(new ShortcutListener("caption", KeyCode.ENTER, null) {
private static final long serialVersionUID = 1L;
@Override
public void handleAction(Object sender, Object target) {
label.setValue("entered");
}
});
关于java - 如何在选择更改时更新 vaadin 选项卡中的内容?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23733566/