1

我想要一个列表选择,它将有多个样式,我放了两种对象的一个​​是一组用户(粗体),其余的是用户(斜体或常规)是否可以添加将添加的样式添加到 obj 的一部分?我的代码如下所示:

    for(Usr usr: userSearchResult){
    listSelect.addItem(usr);
    }
    listSelect.addStyleName("bold");
        for (Gr gr : groupSearchResult) {
            searchList.addItem(gr);
    }

并且在 css 中设置的样式也与此类似

    .v-select-bold .v-select-select {
    font-weight:bold;}

我很乐意自己解决这个问题,但那是两天前的事了,现在我有点;)提前感谢您的帮助!

4

2 回答 2

1

您可以将行存储为带有样式的标签。在容器中会有一个标签实例。在那里您可以简单地添加样式。

    Container container = new IndexedContainer();
    container.addContainerProperty(NAME_PROPERTY, Label.class , "");

    for (int i = 0; i <= 50 ; i++) {
        Item item = container.addItem(i);
        Label label = new Label(HashUtils.getRandomSalt());
        label.addStyleName(style)
        item.getItemProperty(NAME_PROPERTY).setValue();
    }
    return container;
于 2014-03-20T13:48:38.433 回答
0

您不能对 ListSelect 的行进行样式设置。您可以使用具有一列的 Table 组件来实现类似的结果。Table.setCellStyleGenerator方法用于区分每个单元格的样式(在您的情况下为每一行)。

于 2013-08-28T07:36:16.540 回答