基于选择状态的GWT单元绘制

基于选择状态的GWT单元绘制,gwt,Gwt,我在CellTree中有一个自定义图像单元格。我希望根据行/节点选择状态渲染两个不同的图像,例如,如果选择了行/节点,我希望渲染图像A(如果未选择图像B)。每个节点的图像对不同 在单元格的渲染方法中获取选择状态的最佳方法是什么?CSS解决方案 如果您可以在这里处理背景图像,最简单和最有效的解决方案将是基于CSS的 看看/com/google/gwt/user/cellview/client/CellTree.css(在gwt user.jar中)。在这里您可以看到css类“.cellTreeIt

我在CellTree中有一个自定义图像单元格。我希望根据行/节点选择状态渲染两个不同的图像,例如,如果选择了行/节点,我希望渲染图像A(如果未选择图像B)。每个节点的图像对不同

在单元格的渲染方法中获取选择状态的最佳方法是什么?

CSS解决方案 如果您可以在这里处理背景图像,最简单和最有效的解决方案将是基于CSS的

看看/com/google/gwt/user/cellview/client/CellTree.css(在gwt user.jar中)。在这里您可以看到css类“.cellTreeItem”和“.cellTreeSelectedItem”。后者已经有了图像。你可以自己分配,对于“.cellTreeItem”则是另一个

有关如何调整CellTable/CellTree/…的一般信息。。。样式,请参见示例

细胞溶液 您可以使用SelectionModel构建单元格,如

public MyCell(SelectionModel SelectionModel){
this.selectionModel=selectionModel;
}
公共void呈现(最终单元格上下文、最终节点值、,
最终安全性(HTMLBuilder sb){
如果(selectionModel.isSelected)(。。。
}

但是,当选择更改时,您可能需要重新触发单元格渲染。这可能是可能的,但我从来没有这样做过。

不幸的是,CSS解决方案不可能,因为每个节点的图像对都不同。我将用约束更新问题。请选择模型解决方案。