找到问题的图像:
我正在尝试创建一个显示包含可点击事件的多个图像的列。但是我没有使用图片,而是获取了HTML代码。
我编写的列配置如下:
actionsCol = new ColumnConfig<SensorTreeModel,String>(new ValueProvider<SensorTreeModel, String>() {
com.sencha.project.client.Resources resources = GWT.create(com.sencha.project.client.Resources.class);
@Override
public String getValue(SensorTreeModel String) {
//ImageResource image = resources.add();
FlowPanel flowPanel = new FlowPanel();
ImageResource add = com.sencha.project.client.Resources.INSTANCES.add();
Image add1 = new Image(add);
flowPanel.add(add1);
//return add1;
return flowPanel.toString();
}
@Override
public void setValue(SensorTreeModel object, String value) {
if (object.getIsLeaf()) {
}
}
@Override
public String getPath() {
return "actions";
}
});
actionsCol.setHeader("");
答案 0 :(得分:2)
在ColumnConfig<M,N>
和ValueProvider<T,V>
中,N和V的列内容相同且类型相同。所以在你的例子中,你将String作为值返回。如果返回ImageResource,列将显示Image。
我希望它有所帮助。
actionsCol = new ColumnConfig<SensorTreeModel,ImageResource>(new ValueProvider<SensorTreeModel, ImageResource>() {
com.sencha.project.client.Resources resources = GWT.create(com.sencha.project.client.Resources.class);
@Override
public ImageResource getValue(SensorTreeModel String) {
ImageResource add = com.sencha.project.client.Resources.INSTANCES.add();
return add;
}
@Override
public void setValue(SensorTreeModel object, ImageResource value) {
if (object.getIsLeaf()) {
}
}
@Override
public String getPath() {
return "actions";
}
});
actionsCol.setHeader("");
actionsCol.setCell(new ImageResourceCell());