我只想知道如何使用GWT CellTable复制GMail悬停的行标记:
我创建了这个类:
public class MarkerCell extends ImageResourceCell {
@Override
public void render(com.google.gwt.cell.client.Cell.Context context, ImageResource value, SafeHtmlBuilder sb) {
value = Images.INSTANCE.selectedRowMarker();
super.render(context, value, sb);
}
}
public class MarkerColumn<T> extends Column<T, ImageResource> {
public MarkerColumn() {
super(new MarkerCell());
}
@Override
public ImageResource getValue(T object) {
return Images.INSTANCE.selectedRowMarker();
}
}
我以这种方式使用它:
MarkerColumn<GfsFile> marker = new MarkerColumn<GfsFile>();
marker.setSortable(false);
table.addColumn(marker);
排除应该隐藏/取消隐藏标记的悬停事件处理,结果并不像我预期的那样:
你会采用什么方法来接近GMail?
答案 0 :(得分:1)
我会将行标记图像作为每行的一部分嵌入,并附加一个将不透明度设置为0的样式。然后将:hover状态添加到行selectorClass,将不透明度设置为1.诀窍是获取css选择权。我认为单元格表使用表格行,所以它应该像
tr:hover .selectorImageStyle {opacity:1 }