对任何想法都会感激不尽。
要求
(A)包含
的表格A.1 text columns
A.2 one column for HTML content
A.3 one column to house a radio button group
(B)翻阅记录的能力,例如使用SimplePager。
到目前为止考虑的替代方案
有人可以建议提供所有A和B的替代方案吗?我也看过Smart GWT,但看不到任何我可以使用的东西。但我对GWT或Smart GWT都不是很有经验。
谢谢。
[编辑1]现在创建了带有三个按钮的单选按钮组,如下所示('InterimReport'是我的数据类型):
Column<InterimReport, SafeHtml> radioButtonColumn = new Column<InterimReport, SafeHtml>(new SafeHtmlCell()) {
@Override
public SafeHtml getValue(InterimReport object) {
String s = "<input type=\"radio\" name=\"selection\"" + object.get("dbIndex") + " value=\"match\" /> match<br />"+ "<input type=\"radio\" name=\"selection\"" + object.get("dbIndex")+ " value=\"nomatch\" /> no match<br />" + "<input type=\"radio\" name=\"selection\""+ object.get("dbIndex") + " value=\"urlnotfound\" /> URL not found</>";
return SafeHtmlUtils.fromTrustedString(s);
}
};
[编辑2]但是如何捕获用户选择的单选按钮?此代码片段似乎没有做任何事情:
radioButtonColumn.setFieldUpdater(new FieldUpdater<InterimReport, SafeHtml>() {
public void update(int index, InterimReport object, SafeHtml value) {
System.out.println("Reached here");
if (value.equals("match")) {
setMatch(object.get("dbIndex"), index);
} else if (value.equals("nomatch")) {
setNoMatch(object.get("dbIndex"), index);
} else if (value.equals("urlnotfound")) {
setUrlNotFound(object.get("dbIndex"), index);
}
}
});
答案 0 :(得分:0)
CellTable可以保存HTML内容(SafeHtmlCell
),因此也可以保存单选按钮组。只需使用<input type="radio" name="whatever"/>
作为HTML。你不能在CellTable中使用 Widgets - 其他一切仍然有效。
Column<YourType, SafeHtml> radioColumn = new Column<YourType, SafeHtml>(new SafeHtmlCell())
{
@Override
public SafeHtml getValue(YourType object)
{
return generateInputHtmlFromObject(object);
}
}
cellTable.addColumn(radioColumn);
(对不起,未经测试的代码。也许我记错了方法签名或其他什么)