首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在Vaadin8组合框中获取项目大小?

如何在Vaadin8组合框中获取项目大小?
EN

Stack Overflow用户
提问于 2017-12-27 20:29:26
回答 1查看 588关注 0票数 1

如果Vaadin8组合框中没有任何项目,我会尝试显示弹出窗口。但是没有getItems()或size()方法。

这是我的代码,如果分支大小=0,我想推送一个通知给用户。

代码语言:javascript
复制
        cbxBranch = new ComboBox<>();
        cbxBranch.setPlaceholder("Select a branch");
        cbxBranch.setItemCaptionGenerator(Branch::getBranchName);
        cbxBranch.setEmptySelectionAllowed(false);
        cbxBranch.setItems(getBranches());
        cbxBranch.addFocusListener(e -> {
            //this line just a sample..
            System.out.println(cbxBranch.getDataProvider().size());
        });

更新:

代码语言:javascript
复制
cbxBranch.addFocusListener(e -> {
    if (((ListDataProvider<Branch>) cbxBranch.getDataProvider()).getItems().isEmpty()) {
       Notification.show("You don't have a branch!", Type.WARNING_MESSAGE);
    }
});
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2017-12-27 21:32:32

Vaadin8将DataProviders用于GridTreeGridComboBox等项目组件。setItems方法是一种方便的方法,用于将数组/集合设置为组合框的ListDataProvider。因此,您可以调用getDataProvider,强制转换为ListDataProvider,然后调用getItems (参见java文档here)。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/47992228

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档