1

我想在树中只加粗父项,并保持子项正常大小。

我尝试以这种方式使用 css,但它不起作用:

.gwt-Tree{
    font-weight: bold;
}

.gwt-TreeItem {
    font-weight: normal;
}

.gwt-Tree .gwt-TreeItem-selected {
    font-weight: normal;
}

有没有办法到达那里?

先感谢您

编辑-Java代码:

String[] composers = new String[]{"Item 1","Item 2","Item 3"};

Resources treeResource = GWT.create(TreeResources.class); 

Tree staticTree = new Tree(treeResource);

TreeItem item1 = staticTree.addTextItem(composers[0]);          

TreeItem item2 = staticTree.addTextItem(composers[1]);

// add sub items
addItemSection(item1, "item 1 - 1",new String[]{});
addItemSection(item1, "item 1 - 2", new String[]{});

addItemSection(item2, "item 2 - 1",new String[]{});
addItemSection(item2, "item 2 - 2", new String[]{});
addItemSection(item2, "item 2 - 3", new String[]{});

TreeItem item = new TreeItem();
item1.addItem(item);
item2.addItem(item);

Tree t = new Tree();
t.addItem(item1);
t.addItem(item2);

private void addItemSection(TreeItem parent, String label, String[] composerWorks) 
{
   TreeItem section = parent.addTextItem(label);        

   for (String work : composerWorks) {
    section.addTextItem(work);
   }
}

结果:

项目 1
项目 1 - 1
项目 1 - 2

项目 2
项目 2 - 1
项目 2 - 2
项目 2 - 3

但就我而言,一切都是粗体:/

4

3 回答 3

0

一种方法是这样的:

.root {font-size: 12; font-weight: bold;}
.leaf {font-size: 12; font-weight: normal;}

TreeItem root = new TreeItem("MyRootDescr");
root.addStyleName("root");

TreeItem item = new TreeItem("MyLeafDescr");
item.addStyleName("leaf");
于 2013-07-26T16:09:10.130 回答
0

对我来说已经有一段时间了,但我记得你可以在你的 java 代码中为树对象添加 CSS 样式的 HTML 标签。

见: http ://blog.francoismaillet.com/?p=68

于 2013-07-26T12:49:57.640 回答
0

这可能看起来不优雅,但它确实有效。设置父项样式后,遍历子项并将其样式设置为基本样式(在您的情况下为纯文本)。

在您的 CSS 文件中:

.styleTreeItemParent {
 font-weight: bold;
}

.styleTreeItemChild {
 font-weight: normal;
}

在您的 GWT 类中:添加方法 styleParent 与父 treeItem 作为参数。

 private void styleParent(TreeItem item) {
    int nC=item.getChildCount();
        item.setStyleName("styleTreeItemParent");

        for(int i=0;i<nC;i++) {
            item.getChild(i).setStyleName("styleTreeItemChild");
        }
}
于 2015-06-04T02:39:58.753 回答