我使用的是Gxt-2.2.0和GWT2.0。并且GXT Numberfileds.是不可编辑的。
我能为可编辑的NumberFields做些什么?
下面的代码是无望的;
NumberField field = new NumberField();
field.setEditable(true);发布于 2011-01-03 14:19:05
我从GXT开发团队那里得到了答案。简单的解决方案是将Gxt-2.2.0升级到GXT-2.2.1。这次升级解决了这个问题。
Source
发布于 2011-01-02 04:13:50
它是可编辑的,您的代码必须简单地工作,问题似乎与数字字段实现有关。
它只接受0-9之间的字符,似乎在你的浏览器中的某个区域设置中,它发送的字符不是0-9。你可以尝试其他浏览器(在我的例子中,它在IE中工作,而不是在Firefox中)
现在要解决您的问题,您必须通过调用以下方法来设置它接受的字符:
// They are by default 0-9 change them to your locale numbers
field.setBaseChars("0123456789");如果您不知道区域设置数字字符是什么,可以在NumberField类中使用此方法进行调试(检查密钥变量):
protected void onKeyPress(FieldEvent fe) {
super.onKeyPress(fe);
char key = (char) fe.getKeyCode();
if (fe.isSpecialKey(lastKeyCode) || lastKeyCode == KeyCodes.KEY_BACKSPACE
|| lastKeyCode == KeyCodes.KEY_DELETE || fe.isControlKey()) {
return;
}
if (!allowed.contains(key)) {
fe.stopEvent();
}
}https://stackoverflow.com/questions/4545150
复制相似问题