如何在Vaadin8组合框中获得物品尺寸?
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何在Vaadin8组合框中获得物品尺寸?相关的知识,希望对你有一定的参考价值。
如果Vaadin8组合框中没有任何项目,我正试图显示弹出窗口。但是没有getItems()或size()方法。
这是我的代码,如果分支大小= 0我想向用户发送通知。
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());
});
更新:
cbxBranch.addFocusListener(e -> {
if (((ListDataProvider<Branch>) cbxBranch.getDataProvider()).getItems().isEmpty()) {
Notification.show("You don't have a branch!", Type.WARNING_MESSAGE);
}
});
答案
Vaadin 8使用DataProvider
s作为Grid
,TreeGrid
或ComboBox
等项目组件。 setItems
方法是一种方便的方法,可以将ListDataProvider
与您的数组/集合设置为组合框。因此,您可以调用getDataProvider
,强制转换为ListDataProvider
并调用getItems
(请参阅java doc here)。
以上是关于如何在Vaadin8组合框中获得物品尺寸?的主要内容,如果未能解决你的问题,请参考以下文章