2011-08-24 57 views
3

我注意到当单击到我的EditTextCell中时,我的Web应用程序在单元格宽度中跳转。防止在编辑和非编辑模式之间切换时GWT EditTextCell翻转

正如我在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() - 方法被称为 - 但我could'nt找到任何通知,说明自定义CSS风格应用...

任何提示?或者,也许其中一个谷歌人也扫描了这一点,可以帮助吗?

问候, 克里斯

回答

2

你正确的地方,谷歌设置的绝对宽度的colums。 参见例如

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

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

+0

好吧,你在哪里吧!愚蠢的没有看到。我已将表格设置为100%和绝对布局的宽度,并将PX大小赋予列。现在看起来更好,但是当我调整窗口大小时,editTextCells的底层文本框大于列并被截断。这也是在谷歌的例子:( – Chris

+0

嗯,最后我会留在解决方案重新实现TextEditCell作为Stas Kurilin张贴在http://stackoverflow.com/questions/6274124/edittextcell-fieldupdater-width/ 6550348#6550348 – Chris

+0

谢谢,它看起来很稳固,也许我以后也需要它:) – Stefan

相关问题