网格中Vaadin的ComboBox在单击时未显示下拉列表

时间:2019-02-04 23:35:49

标签: combobox vaadin dropdown

我正在运行Vaadin 8,并且有一个TreeGrid,其中的列设置带有组合框以供编辑。不幸的是,当我连续单击一个组合时,它会立即打开和关闭下拉菜单,几乎不允许我看到组合选项,但是我仍然可以在组合中键入文本,然后下拉菜单才会出现(组合只有很少的示例值)在里面)。我注意到会话终止(并且服务器未连接)时,我能够打开下拉列表。

enter image description here

这是我的代码段,其中添加了这样的列:

tg.addComponentColumn( r -> { 

    ComboBox<String> labelsCb = new ComboBox<>();

    labelsCb.setNewItemProvider( new NewItemProvider<String>() {

        @Override
        public Optional<String> apply( String t ) {

            return Optional.of( t );
        }
    } ); 

    labelsCb.setDataProvider( labelsDp  );

    labelsCb.setHeight( LABEL_COMBO_HEIGHT + "px" );
    labelsCb.setWidth( LABEL_COMBO_WIDTH_PX + "px" );

    labelsCb.addSelectionListener( event -> {

        r.setLabel( event.getValue() );
    });

    return labelsCb;

} ).setCaption( LABEL ).setWidth( LABEL_COMBO_WIDTH_PX * 1.40 );

1 个答案:

答案 0 :(得分:0)

找到了原因-我的组合列干扰了TreeGrid的expander列(第一列在左侧)-一旦将其列为第二列,它便开始工作。我相信这是TreeGrid的一个错误,但这是一个不错的解决方法。