gpt4 book ai didi

java - 如何设置GWT单元格背景颜色

转载 作者:行者123 更新时间:2023-12-02 07:37:25 24 4
gpt4 key购买 nike

我想更改 gwt 单元格列的背景颜色属性。问题是这种颜色可能会在单元格的每次渲染时发生变化(背景颜色取决于单元格的值)。

我已经尝试重写 TextColumn 的单元格样式名称方法,如下所示:

@Override
public String getCellStyleNames(final Context context, final Object data) {
if (my_condition) return "a custom style";
else return "default style"; // or null...
}

你当然知道它只是向属性添加一个类名,因此由于静态 css 文件定义,我无法使用它“动态”设置颜色。

感谢您的帮助!

最佳答案

<删除>如果您使用 Grid,则可以使用 CellFormatter。例如。 grid.getCellFormatter().setStyleName(行, 列, "dynamicStyleName");

对于“颜色”属性的动态更新,我建议扩展 TextCell(并将其传递给“TextColumn”构造函数)。类似这样的事情:

public class CustomCell extends TextCell<String> {

interface Template extends SafeHtmlTemplates {
@Template("<div style=\"color:{0}\">{1}</div>")
SafeHtml div(String url, String text);
}

private static Template template;

public CustomCell () {
if (template == null) {
template = GWT.create(Template.class);
}
}

@Override
public void render(Context context, String value, SafeHtmlBuilder sb) {
String color = "red";
if (value != null) {
// The template will sanitize the URI.
sb.append(template.div(color, value));
}
}
}


public class CustomColumn<T> extends TextColumn<T> {

public CustomColumn() {
super(new CustomCell());
}
}

关于java - 如何设置GWT单元格背景颜色,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11993154/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com