我有一个扩展 com.smartgwt.client.data.DataSource 的 DataSource 类。我有几个显示一些字符串的 DataSourceTextFields,我还需要在其中一列中显示一个图像按钮。问题是,如果我添加另一个这样的字段:
DataSourceField icon = new DataSourceField("name", FieldType.ANY, "title");
setFields(/*the other fields*/, icon);
然后在获取时添加所有这样的值:
ArrayList<Record> records = new ArrayList<Record>();
// add all records in iteration, an then add the icon one
ListGridRecord iconRecord = new ListGridRecord();
ImgButton icon = new ImgButton();
icon.setSrc("theSrc/icon.png");
// icon.addClickHandler to execute some action
iconRecord.setAttribute("name", icon);
records.add(iconRecord);
response.setData(records.toArray(new Record[records.size()]));
processResponse(requestId, response);
所有这些都会产生一个 com.google.gwt.core.client.JavaScriptException: (null): null - 表格显示,但有空行并且在控制台中出现此错误(没有更多详细信息)。我也尝试将 ImgButton 放在 HLayout 中,但我得到了同样的错误。为此,我还尝试创建一个 DataSourceImageField ,但后来出现了其他错误。能否请你帮忙?谢谢你。