我正在尝试将一个动作单元添加到GWT数据网格中,但我遇到了麻烦。我查看了GWT展示,并找到了一个向celltable添加动作单元的示例,如图所示
// ActionCell.
addColumn(new ActionCell<ContactInfo>(
"Click Me", new ActionCell.Delegate<ContactInfo>() {
public void execute(ContactInfo contact) {
Window.alert("You clicked " + contact.getFullName());
}
}), "Action", new GetValue<ContactInfo>() {
public ContactInfo getValue(ContactInfo contact) {
return contact;
}
}, null);
这是我的尝试,但我不知道这在语法上是怎么看的,它是如何工作的?
Column<OpInventory, ActionCell<OpInventory>> checkColumn = new Column<OpInventory,
//I get an error on instantiating the Delegate
ActionCell<OpInventory>>(new ActionCell("x", new ActionCell.Delegate<OpInventory>())) {
//this is wrong here
@Override
public ActionCell getValue(OpInventory object) {
// TODO Auto-generated method stub
return null;
}
};
table.addColumn(checkColumn, SafeHtmlUtils.fromSafeConstant("<br/>"));
table.setColumnWidth(checkColumn, 40, Unit.PX);
答案 0 :(得分:0)
找出了语法,在这里发布给其他人。
@SuppressWarnings({ "unchecked", "rawtypes" })
Column<OpInventory, ActionCell> actionCellColumn = new Column<OpInventory, ActionCell>(new ActionCell("See Lots", new ActionCell.Delegate<OpInventory>() {
@Override
public void execute(OpInventory object) {
// TODO Auto-generated method stub
}
})){
@Override
public ActionCell getValue(OpInventory object) {
// TODO Auto-generated method stub
return null;
}
};
table.addColumn(actionCellColumn, "See Lot Numbers");
table.setColumnWidth(actionCellColumn, 40, Unit.PX);