java 如何指定选择选项值?

x33g5p2x  于 2023-02-02  发布在  Java
关注(0)|答案(1)|浏览(255)

我想有选项值作为国家代码(AL,AK,AZ)和标签是国家名称(阿拉巴马州,阿拉斯加州,亚利桑那州)使用Vaadin选择组件。

states.setItems(facade.stateService().findAllStates().stream().map(States::getName).collect(Collectors.toList()));
<option value="AL">Alabama</option>

如何在vaadin中生成上述选项?谢谢。

b4lqfgs4

b4lqfgs41#

在使用Vaadin时,您通常不必关心HTML的确切表示,框架会自动为所有项目生成内部标识符,以便您可以在Java API中使用完整的对象表示(例如,您的示例中的States示例)。
然后,您将获得States的一个示例作为select的值,并且还可以在各种事件中使用。

Select<States> states = new Select<>();
states.setItems(facade.stateService().findAllStates());
states.setItemLabelGenerator(States::getName);
states.addValueChangeListener(event -> {
  Notification.show("Selected state code "  + event.getValue().getCode());
});

相关问题