3

我注意到当我单击 EditTextCell 时,我的 Web 应用程序在单元格宽度上跳跃。

正如我在http://gwt.google.com/samples/Showcase/Showcase.html#!CwCellTable上看到 的,可以防止这种情况发生。我还看到了 EditTextCell 被子类化的解决方案,这不是我最喜欢的。但我不太明白为什么 Google 示例不跳来跳去,而我的示例却跳来跳去。

他们是否使用 CSS 来防止这种情况?

这是我的一些代码:

cellTable = new CellTable<MyTO>();
Column<MyTO, String> editableColumn = new Column<MyTO, String>(new EditTextCell()) {
@Override
public String getValue(MyTO my) {
  return my.getString();
}
};
editableColumn.setFieldUpdater(new FieldUpdater<MyTO, String>() {

@Override
public void update(int index, MyTO object,String value) {
object.setString(value);
dirty = true;
}
}); 

cellTable.addColumn(editableColumn, "Editable Column");

据我通过谷歌示例看到,没有调用 setWidth()-Method - 但我找不到任何应用自定义 CSS 样式的通知......

有什么提示吗?或者也许谷歌的一个人也扫描了这个并且可以提供帮助?

问候,克里斯

4

1 回答 1

2

你在哪里,谷歌为列设置了一个绝对宽度。参见例如

cellTable.setColumnWidth(checkColumn, 40, Unit.PX);

在“示例”文件中。这可以防止列跳跃,因为它始终具有固定大小。如果您在单元格处于编辑模式时仔细观察单元格,您会注意到,文本字段会稍微超出一点(至少在 IE 中)。

于 2011-08-24T13:09:48.747 回答