我在GWT中使用了一个CellTable小部件。
我想更改第一列中包含的每个文本的字体大小。该方法addColumnStyleName
不符合我的需要,因为它将类添加到colgroup
标签中;在这个标签上只处理部分 css,我无法更改 colgroup 的字体属性(它对文本没有发生率(。
因此,我想在第一列的每个td
添加一个类,但找不到简单的方法来做到这一点。
像 setRowStyles 这样的东西可以列,但它不存在......
你有没有关于做这样的事情的提示?
编辑:我使用GWT 2.3而不是2.4(该方法setCellStyleNames(
就像在Column
实例上调用setCellStyleNames
一样简单。
我终于明白了。但我对这个解决方案并不满意。对于如此简单的任务来说,这有点冗长。我对任何其他建议持开放态度。
我实现它的方法是创建一个新单元格和一个新列:
private class KeyColumn extends Column<SimpleLegendItem, String> {
public KeyColumn() {
super(new KeyCell());
}
@Override
public String getValue(SimpleLegendItem item) {
return item.getKey();
}
}
private class KeyCell extends AbstractCell<String> {
@Override
public void render(com.google.gwt.cell.client.Cell.Context context, String value, SafeHtmlBuilder sb) {
sb.appendHtmlConstant("<span class="" + tableResources.cellTableStyle().box() + "">");
sb.appendEscaped(value);
sb.appendHtmlConstant("</span>");
}
}
为了简化示例,我故意不使用模板。