GWT如何制作由两种单元格组成的复合单元格,或如何制作带有图像和文本的自定义单元格
我想在celltable/datagrid中添加一列,其中包含图像+文本。 我只是做了一些研究,发现也许有三种方法可以做到这一点GWT如何制作由两种单元格组成的复合单元格,或如何制作带有图像和文本的自定义单元格,gwt,datagrid,gwt-2.2-celltable,custom-cell,gwt-celltable,Gwt,Datagrid,Gwt 2.2 Celltable,Custom Cell,Gwt Celltable,我想在celltable/datagrid中添加一列,其中包含图像+文本。 我只是做了一些研究,发现也许有三种方法可以做到这一点 制作一个ImageResourceCell和一个TextCell,然后将它们组合成一个复合单元格。(还没有看到任何示例或参考资料,只是从我的脑海中浮现出来。可能这不起作用) 使用IconCellDecorator。我检查了文件。它说“一个为另一个单元格添加图标的单元格装饰器”。不确定它是否能满足我的要求。我仍然找不到任何关于它的例子 制作一个自定义单元格。有一个关于在
致以最诚挚的问候这不完全是您搜索的内容,但我认为您可以修改我的示例。在这里,我使用CompositeCell获得一个包含两个不同图像的单元,每个图像都在ImageCell中渲染
//first make a list to store the cells, you want to combine
final ArrayList<HasCell> zellen = new ArrayList<HasCell>();
//then define the cells and add them to the list
HasCell bearbeiten = new HasCell(){
@Override
public Cell getCell() {
return new ImageCell();
}
@Override
public FieldUpdater getFieldUpdater() {
return null;
}
@Override
public Object getValue(Object object) {
String bearbBild = "images/pencil3.png";
return bearbBild;
}
};
zellen.add(bearbeiten);
HasCell ansicht = new HasCell(){
@Override
public Cell getCell() {
return new ImageCell();
}
@Override
public FieldUpdater getFieldUpdater() {
return null;
}
@Override
public Object getValue(Object object) {
String ansichtBild = "images/gnome_edit_find.png";
return ansichtBild;
}
};
zellen.add(ansicht);
//use your CompositeCell in another Widget or Table
Column<Benutzergruppe, Cell> options = new Column<Benutzergruppe, Cell>(new CompositeCell(zellen)){
@Override
public Cell getValue(Benutzergruppe object) {
return zellen.get(0).getCell();
}
};
//首先创建一个列表来存储要合并的单元格
final ArrayList zellen=新的ArrayList();
//然后定义单元格并将其添加到列表中
HasCell bearbeiten=新的HasCell(){
@凌驾
公共单元getCell(){
返回新的ImageCell();
}
@凌驾
公共字段更新程序getFieldUpdater(){
返回null;
}
@凌驾
公共对象getValue(对象对象){
字符串bearbBild=“images/pencil3.png”;
返回熊皮;
}
};
zellen.add(bearbeiten);
HasCell ansicht=新的HasCell(){
@凌驾
公共单元getCell(){
返回新的ImageCell();
}
@凌驾
公共字段更新程序getFieldUpdater(){
返回null;
}
@凌驾
公共对象getValue(对象对象){
字符串ansichtBild=“images/gnome\u edit\u find.png”;
返回ansichtBild;
}
};
zellen.add(ansicht);
//在其他小部件或表格中使用CompositeCell
列选项=新列(新CompositeCell(zellen)){
@凌驾
公共单元格getValue(Benutzergruppe对象){
返回zellen.get(0.getCell();
}
};
我将该列添加到DataGrid中,效果很好
你好,Nicole看一下示例,尤其是CellList、CellTree/CellBrowser和CellSampler。