Java 如何检测NativeEvent中的数字键?

Java 如何检测NativeEvent中的数字键?,java,javascript,events,gwt,Java,Javascript,Events,Gwt,查看com.google.gwt.dom.client.NativeEvent扩展了JavaScriptObject,如何检测事件是否为数字? 我想到了Character.isDigit(event.getKeyCode()),但这会给我一个错误: 类型字符中的方法isDigit(char)不适用于参数(int) 我还能怎么发现他的? 我使用GWT Java来实现这一点。结果是我必须对:(char)event.getKeyCode()进行转换 通过这种方式,isDigit(char)可以毫无问题

查看
com.google.gwt.dom.client.NativeEvent扩展了JavaScriptObject
,如何检测事件是否为数字? 我想到了
Character.isDigit(event.getKeyCode())
,但这会给我一个错误:

类型字符中的方法isDigit(char)不适用于参数(int)

我还能怎么发现他的?
我使用GWT Java来实现这一点。

结果是我必须对:
(char)event.getKeyCode()进行转换

通过这种方式,
isDigit(char)
可以毫无问题地使用。

事实证明,我必须转换到:
(char)event.getKeyCode()
这样就可以使用
isDigit(char)
而不会出现问题。

解决方案1 解决方案2
public void onBrowserEvent(com.google.gwt.cell.client.cell.Context上下文、元素父元素、字符串值、NativeEvent事件、ValueUpdater ValueUpdater)
{       
if(“keypress”.equals(event.getType()))
{
int charCode=event.getCharCode();
如果(!Character.isDigit((char)charCode))
{
System.out.println(“这是一个数字!!!”);
}
}
onBrowserEvent(上下文、父级、值、事件、值更新程序);
}
解决方案1 解决方案2
public void onBrowserEvent(com.google.gwt.cell.client.cell.Context上下文、元素父元素、字符串值、NativeEvent事件、ValueUpdater ValueUpdater)
{       
if(“keypress”.equals(event.getType()))
{
int charCode=event.getCharCode();
如果(!Character.isDigit((char)charCode))
{
System.out.println(“这是一个数字!!!”);
}
}
onBrowserEvent(上下文、父级、值、事件、值更新程序);
}

字符.isDigit
来自哪里?这是ActionScript还是ECMAScript的其他实现?java.lang.Character。对不起,我应该提到NativeEvent来自gwt。这现在更有意义了,谢谢!
Character.isDigit
来自哪里?这是ActionScript还是ECMAScript的其他实现?java.lang.Character。对不起,我应该提到NativeEvent来自gwt。这现在更有意义了,谢谢!没有,我只有
NativeEvent
。更具体地说:它位于
EditTextCell
onBrowserEvent()
中,它只提供本机事件。是的,这正是我在上面评论的将CharCode转换为char并转发给isDigit()的内容。无论如何,这里有一个完整的示例非常有用。不,我只有
NativeEvent
。更具体地说:它位于
EditTextCell
onBrowserEvent()
中,它只提供本机事件。是的,这正是我在上面评论的将CharCode转换为char并转发给isDigit()的内容。无论如何,这里有一个完整的例子非常有用。
addKeyPressHandler( new KeyPressHandler()
{
  public void onKeyPress( KeyPressEvent event )
  {
   char charCode = event.getCharCode();
   if ( Character.isDigit( charCode ) )
   {
    System.out.println("This is a digit!!!");
   }
  }
}
public void onBrowserEvent( com.google.gwt.cell.client.Cell.Context context, Element parent, String value, NativeEvent event, ValueUpdater<String> valueUpdater )
    {       
        if ( "keypress".equals( event.getType() ) )
        {
            int charCode = event.getCharCode();
            if ( !Character.isDigit( ( char ) charCode ) )
            {
              System.out.println("This is a digit!!!");
            }
        }
        super.onBrowserEvent( context, parent, value, event, valueUpdater );
    }