我想有一个列表选择将有多个样式,我把两种对象的一个是一组用户(粗体),其余是用户(斜体或常规)是否可以添加样式将被添加到添加的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;}
我很乐意自己解决这个问题,但那是两天前我现在在一个点;) 在此先感谢您的帮助!
答案 0 :(得分: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;
答案 1 :(得分:0)
您无法设置ListSelect的行的样式。您可以将Table组件与一列一起使用以获得类似的结果。 Table.setCellStyleGenerator
方法用于区分每个单元格的样式(在您的情况下为每一行)。